gpt4 book ai didi

javascript - Dygraphs 库 : Access to non-visible data in highlightCallback function possible?

转载 作者:行者123 更新时间:2023-11-30 08:11:26 24 4
gpt4 key购买 nike

这是一个关于 Dygraphs 库的问题。

当使用“visibility”方法来抑制多元时间序列的某些变量的呈现时,只有visible高亮点被传递给“highlightCallback”函数(第三个参数,名为文档中的“点”)。如果用户可以访问回调函数中的所有点,即突出显示,如果相应的变量要被突出显示,那将会很方便设置为可见

我的问题:是否有功能/解决方法来访问(un)highlightCallback 函数中不可见突出显示点的坐标?

为了澄清问题,这里有一个简单的例子:

假设我们有以下多变量时间序列

"time_index", "var1", "var2"\n
"1", "5.1", "0.3"\n
"2", "5.5", "0.2"\n
"3", "5.8", "0.1"

和使用此数据集的 Dygraph 对象 g。我们设

g.updateOptions({visibility: [true, false]});

因此,对应于 var1 的时间序列被绘制,而 var2 被隐藏。现在假设我们要为时间序列 var1 的每个突出显示点绘制一条长度为 var2 的垂直线,即,

  • (1,5.1)(1,5.4)=(1,5.1+0.3) 的一行,当点 (1,5.1) 突出显示
  • (2,5.5)(2,5.7)=(2,5.5+0.2) 的一行,当点 (2,5.5) 突出显示
  • (3,5.8)(3,5.9)=(3,5.8+0.1) 的一行,当点 (3,5.8) 突出显示

这将通过使用 highlightCallback 函数来完成。

g.updateOptions({
highlightCallback: function(event, x, points, row, seriesName) {
draw_line(points[0],[points[0].xval,points[0].yval+points[1].yval]);
//draw_line(point_start,point_end)
}
});

不幸的是,我还没有找到访问不可见时间序列数据的方法var2(即points[1].yval,这里用来确定highlightCallback 函数中垂直线的长度)。

感谢您的帮助!

最佳答案

dygraphs 确实公开了一个通用的数据访问 API,您可以从 highlightCallback 中使用它:

g.numRows()
g.numColumns()
g.getValue(row, column)

http://dygraphs.com/jsdoc/symbols/Dygraph.html#getValue

highlightCallback 的“行”参数对应于 g.getValue() 的第一个参数。

这是一个展示其工作原理的示例: http://jsfiddle.net/eM2Mg/7/

关于javascript - Dygraphs 库 : Access to non-visible data in highlightCallback function possible?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9809699/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com