Я создаю свою диаграмму следующим образом:
= line_chart @parameter.grouped_data(@period, {date: @date}), suffix: ' ' + (@parameter.parameter_type.unit || ''), discrete: true, id: "param-chart"`
и использую следующий код для привязки события onClick к диаграмме после создания:
if ($('#param-chart').length > 0) {
chart = Chartkick.charts['param-chart'];
document.getElementById('param-chart').onclick = function(evt) {
var activePoint;
activePoint = chart.getChartObject().getElementAtEvent(evt);
if (activePoint.length) {
return console.log(activePoint);
}
};
}
Я также пробовал:
chart.chart.getElementAtEvent(evt);
но я всегда получаю пустой массив.
При просмотре кода chartjs я вижу в этой строке:
module.exports = {
// Helper function for different modes
modes: {
single: function(chart, e) {
var position = getRelativePosition(e, chart);
Положение X и Yоба NaN.Возможно ли, что координаты как-то неправильно переведены?