Chart.js: 从 chart.getPointsAtEvent(e) 获取点索引
Chart.js: Get point index from chart.getPointsAtEvent(e)
我希望让我的图表(用 Chart.js 制作)更具交互性,我想使用以下代码获取一个点的索引(其数据集):
canvas.onclick = function(e) {
const points = chart.getPointsAtEvent(e);
// something like `point.getIndex()` would be great so that I know where this point is in the original dataset
};
有人对此有好的解决方案吗?
您应该能够执行 indexOf(而不是标签查找),因为它指的是点集合中完全相同的对象
canvas.onclick = function (evt) {
var points = chart.getPointsAtEvent(evt);
alert(chart.datasets[0].points.indexOf(points[0]));
};
此外,对于多系列折线图,来自所有数据集的 getPointsAtEvent(evt)
returns 个点。因此,无论您拥有多少数据集或单击哪个数据集,相同的代码都可以工作。
Fiddle - http://jsfiddle.net/yxz2sjam/
我希望让我的图表(用 Chart.js 制作)更具交互性,我想使用以下代码获取一个点的索引(其数据集):
canvas.onclick = function(e) {
const points = chart.getPointsAtEvent(e);
// something like `point.getIndex()` would be great so that I know where this point is in the original dataset
};
有人对此有好的解决方案吗?
您应该能够执行 indexOf(而不是标签查找),因为它指的是点集合中完全相同的对象
canvas.onclick = function (evt) {
var points = chart.getPointsAtEvent(evt);
alert(chart.datasets[0].points.indexOf(points[0]));
};
此外,对于多系列折线图,来自所有数据集的 getPointsAtEvent(evt)
returns 个点。因此,无论您拥有多少数据集或单击哪个数据集,相同的代码都可以工作。
Fiddle - http://jsfiddle.net/yxz2sjam/