Всегда получать пустой массив при клике с ChartKick и ChartJs - PullRequest
0 голосов
/ 27 мая 2019

Я создаю свою диаграмму следующим образом:

= 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.Возможно ли, что координаты как-то неправильно переведены?

...