2016-02-09 54 views
8

我有共享的x轴为https://plot.ly/javascript/subplots/#stacked-subplots-with-a-shared-x-axisPlotly.js跨多个副区

我试图在所有副区的盘旋的多个副区一个plotly.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']); 
    } 
}); 

对于多个次要情节添加轴标签阵列也。 在这种情况下

[ 'XY', 'X2Y2', 'X3Y3', 'x4y4']

这样你可以得到再加悬停事件的次要情节在一个div