score:0

Accepted answer

this is quite straightforward and is documented at the chart.js api page. below is a working snippet adapted from the official example:

let canvas = document.getelementbyid('canvas');

let mychart = new chart(canvas, {
  type: 'bar',
  data: {
    labels: ['a', 'b', 'c', 'd'],
    datasets: [{
      data: [0, 2, 4, 8]
    }]
  }
});

canvas.addeventlistener('click', function(evt) {
  var firstpoint = mychart.getelementatevent(evt)[0];
  if (firstpoint) {
    var label = mychart.data.labels[firstpoint._index];
    var value = mychart.data.datasets[firstpoint._datasetindex].data[firstpoint._index];

    alert('label: ' + label + "\nvalue: " + value);
  }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/chart.js/2.7.3/chart.bundle.min.js"></script>
<canvas id="canvas"></canvas>


Related Query

More Query from same tag