У меня есть многострочная диаграмма, нарисованная с помощью chart.js. Я хочу получить borderColor только выбранной точки (точки данных), когда пользователь нажимает на определенную точку.
Для понимания, у меня есть две линии в моей многолинейной диаграмме с именами Prime and Fibonacci
и My Second dataset
, нарисованные с использованием набора данных [12, 13, 15, 17, 111, 113, 117, 9, 3, 0]
и [2, 3, 5, 7, 11, 13, 17, 13, 21, 34]
соответственно, обе линии имеют разные цвет границы green
и red
соответственно.
Теперь я хочу поймать только точку borderColor
, когда пользователь нажимает на точки данных. Например, когда пользователь щелкает точку данных 111
, которая находится в строке Prime and Fibonacci
, тогда я должен получить borderColor как green
, аналогично, когда пользователь щелкает точку данных 11
из строки My Second dataset
, тогда я должен получить цвет границы как красный.
Я пытался использовать ниже, но это дает мне оба цвета, не имеет значения, на какой строке данных щелкнул пользователь.
var activePoints = lineChart.getElementsAtEvent(evt);
// Below code always gives me green and red, doesn't matter which line's data point the user clicked
activePoints[0]._chart.config.data.datasets[0].borderColor // Always gives green
activePoints[0]._chart.config.data.datasets[1].borderColor // Always gives red
Как я могу это сделать? Для быстрой настройки воспользуйтесь jsbin.
Заранее спасибо!