我很抱歉,如果这是错误的地方,但chart.js git建议这是唯一获得支持的地方。
我最近使用了chart.js的第1版用于项目,因为更简单/更容易的用户体验,我选择了这个库。作为线图的示例,如果将鼠标悬停在x轴上,它将突出显示与悬停点最近的点。在版本2中,您必须将鼠标悬停在实际点上。在chart.js和其他库(如highcharts.js)中,其他图表类型的情况类似。
我的问题很简单,我们可以复制版本2中版本1的可用性还是完全丢失了这个方面? 看一下文档看起来似乎不太可能。
如果答案是否定的,我可以建议发生两种情况中的一种,无论是针对版本2开发还是针对版本1开发的。
答案 0 :(得分:1)
您可以通过扩展line
图表类型并将工具提示模式设置为label
来复制v1.x功能,就像这样
Chart.defaults.myLine = Chart.helpers.clone(Chart.defaults.line);
Chart.controllers.myLine = Chart.controllers.line.extend({
updateElement: function (point) {
var result = Chart.controllers.line.prototype.updateElement.apply(this, arguments);
point.inRange = function (mouseX, mouseY) {
var vm = this._view;
// ignore the y coordinate
return vm ? (Math.abs(mouseX - vm.x) < (vm.hitRadius + vm.radius)) : false;
};
return result;
}
});
然后
...
type: 'myLine',
...
options: {
tooltips: {
mode: 'label'
}
}
};