问题
I want to have the y label value, when I click on the bar.
Like the above example, when I click on feb blue bar I want to have label value, which is 40
I looked for examples on stackOverFlow and other sites but they only have example of label for the legend show up.
some of the code I tried
onClick: function(evt, element) {
var activePoints = bar_chart.getElementAtEvent(evt);
console.log(activePoints[0]._model.datasetLabel);
}
回答1:
This demo gives the value in the bar chart when you click on it. I'm not a chart.js expert so there may be better solutions.
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);
};
来源:https://stackoverflow.com/questions/50515985/get-ylabel-value-onclick-chart-js