当我单击栏时,我想要y标签的值。

javascript - 获取yLabel值onclick图表js-LMLPHP

像上面的示例一样,当我单击2月的蓝色条时,我想要的标签值为40

我在stackOverFlow和其他站点上查找了示例,但它们仅具有显示图例的标签示例。

我尝试过的一些代码

onClick: function(evt, element) {
      var activePoints = bar_chart.getElementAtEvent(evt);
      console.log(activePoints[0]._model.datasetLabel);
}

最佳答案

单击此演示时,该演示会在条形图中给出值。
我不是chart.js专家,所以可能会有更好的解决方案。

https://codepen.io/newschapmj1/pen/PerOzM

/* from https://github.com/chartjs/Chart.js/issues/2292 */
document.getElementById("myChart").onclick = function (evt) {
        var activePoints = myChart.getElementsAtEventForMode(evt, 'point', myChart.options);
        var firstPoint = activePoints[0];
        var label = myChart.data.labels[firstPoint._index];
        var value = myChart.data.datasets[firstPoint._datasetIndex].data[firstPoint._index];
        alert(label + ": " + value);
    };

10-06 15:25