如果任何人碰到这个运行(这实际上是不可能的),我的问题下面的代码添加的行追查到“mouseover_line”事件(以下注释掉):
function mouseover_line(evt) {
var yaxis = data[evt.seriesIndex].yAxis === 2 ? yAxis2 : yAxis1;
// evt.series.values[evt.pointIndex].x = d3.time.format('%x')(new Date(evt.point.x));
// evt.series.values[evt.pointIndex].y = d3.format(',')(evt.point.y);
evt.value = evt.point.x;
evt.series = {
value: evt.point.y,
color: evt.point.color,
key: evt.series.key
};
tooltip
.duration(0)
.valueFormatter(function(d, i) {
return yaxis.tickFormat()(d, i);
})
.data(evt)
.hidden(false);
}
我添加这些行以修复悬停在线图上的标签(我的折线图具有日期时间x轴和逗号分隔的整数y轴)。在添加这些行时,看起来需要额外的处理时间,导致每当您打开/关闭一个系列时,这些线条都会随意绘制。
不太确定导致问题的机制是什么,但这些行是根本原因。
你可以发布图表的代码?最好在jsfiddle或类似的东西。 – johanj