2016-02-09 3 views
8

у меня есть plotly.js граф с множеством сюжетных линий, которые разделяют ось х, как и в https://plot.ly/javascript/subplots/#stacked-subplots-with-a-shared-x-axisPlotly.js зависать на нескольких сюжетных

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

Я попытался решить это, вызвав Plotly.Fx.hover на каждом подзаголовке, но он, похоже, вступает в силу только для последнего подзаголовка, на котором он вызывается. http://codepen.io/john-soklaski/pen/adQwBa

Код я попытался это:

Plotly.Fx.hover('myDiv', {xval: 2, curveNumber: 0}, "xy") 
Plotly.Fx.hover('myDiv', {xval: 2, curveNumber: 1}, "xy2") 

В идеале API будет такой, что я мог бы сделать это в одном вызове:

Plotly.Fx.hover('myDiv', [{xval: 2, curveNumber: 0, subplot: "xy"}, {xval: 2, curveNumber: 1, subplot: "xy2"}]) 

Любые мысли о том, как получить эту Работа?

ответ

0

Я вижу этот вопрос старый, но эта функция была добавлена: https://github.com/plotly/plotly.js/pull/301

+1

Добро пожаловать в переполнение стека! Хотя это теоретически может ответить на вопрос, [было бы желательно] (// meta.stackoverflow.com/q/8259) включить сюда основные части ответа и предоставить ссылку для справки. –

0
Plotly.plot('myDiv', data, layout); 
graph = document.getElementById('myDiv'); 
graph.on('plotly_hover', function(eventdata) { 
    if (eventdata.xvals) { 
     Plotly.Fx.hover(graph, { 
      xval: eventdata.xvals[0] 
     }, ['xy', 'x2y2', 'x3y3', 'x4y4']); 
    } 
}); 

Для нескольких сюжетных добавить массив меток осей также. В этом случае

[ 'х', 'х2у2', 'x3y3', 'x4y4']

Таким образом, вы можете получить в сочетании события наведения мыши для сюжетных в DIV

Смежные вопросы