我已经搜索了答案,但没有发现任何帮助.因此,也许您可以帮助我如何使工具提示仅在悬停点(标记)时才出现在悬停时.区域类型使工具提示显示在图表上的任何位置.我只想在鼠标位于标记上时显示工具提示.当我将指针标记移动到指针下方时,图表似乎“认为”我的鼠标已经位于标记原因上.试图绑定到系列对象的事件,但没有解决.
var chartOptions = {
chart: {
height: $('.sidebar').height()-100,
zoomType: 'xy',
spacingRight: 20,
animation: true,
renderTo: 'chart-container',
},
xAxis: {
gridLineWidth: 1,
type: 'linear',
maxZoom: 1, // fourteen days
title: {
text: 'Frequency (HZ)'
}
},
yAxis: {
min: 0,
title: {
text: 'Acceleration (g)'
}
},
tooltip: {
enabled: true,
formatter: function(){
if(this.series.name != 'Acceleration (g): '){
return false ;
}else {
return 'Frequency: <b>'+ parseFloat(this.x).toFixed(2) + '</b> Hz<br/>'+
'Acceleration: <b>' + parseFloat(this.y).toFixed(4) + '</b> g';
}
},
},
legend: {
enabled: false
},
plotOptions: {
area: {
trackByArea: false,
fillColor: {
linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1},
stops: [
[0, Highcharts.getOptions().colors[0]],
[1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')]
]
},
lineWidth: 1,
marker: {
enabled: false,
},
shadow: false,
states: {
hover: {
lineWidth: 1
}
},
threshold: null,
},
},
series: [{
type: 'area',
name: 'Acceleration (g): ',
pointInterval: 1.953125,
pointStart: 0,
data: dataFFT.y,
}]
};
解决方法:
这种行为是无法更改的-而是禁用区域系列的标记和工具提示(格式化程序中返回false),并使用散点图系列.完全按照您的需要散布系列.查看范例:http://jsfiddle.net/mZt3r/
tooltip :{
shared: true,
formatter: function() {
if(this.points && this.points.length == 1) {
return false;
} else {
var p = this;
return 'x: ' + p.x + '<br/>y: ' + p.y;
}
}
},