Как узнать, какая трассировка нажата в легенде в plot.ly JS

#javascript #plotly #onclicklistener

Вопрос:

В plot.ly, вы можете добавить прослушиватель для событий щелчка по легенде. Как я могу узнать, на какой след в легенде я нажал? Для более конкретного примера предположим, что у меня есть две трассы (траса0, траса1) на линейном графике. Когда пользователь нажимает trace0 в легенде, я хочу отобразить предупреждение с надписью «trace0». Аналогично, когда пользователь нажимает trace1 в легенде, я хочу, чтобы предупреждение говорило что-то другое. Я могу делать предупреждения просто отлично, но я не могу найти никакой документации о том, как это делается.ly определяет, какая трассировка выбрана в легенде. Какая-нибудь помощь?

Ответ №1:

В соответствии с документацией об обработчиках событий , которую вы можете использовать data , которая содержит информацию о событии.

 var trace1 = {
  x: [1, 2, 3, 4],
  y: [10, 15, 13, 17],
  type: 'scatter'
};

var trace2 = {
  x: [1, 2, 3, 4],
  y: [16, 5, 11, 9],
  type: 'scatter'
};

var data = [trace1, trace2];

Plotly.newPlot('myDiv', data);

var myPlot = document.getElementById('myDiv');

myPlot.on('plotly_click', function(data) {
    // get event information from data
    console.log(data);
});
 

Кодовый набор