我正在尝试向dygraph添加一条水平线,它已经显示了我的时间序列数据。
我有完整数据的平均值,我希望在dygraph上显示为静态水平线。
有没有人知道如何做到这一点。
我已经检查过以下链接: http://dygraphs.com/tests/highlighted-region.html 视图源:http://dygraphs.com/tests/crosshair.html
必须有一些简单的解决方案
答案 0 :(得分:6)
作为danvk mentioned before,请尝试在"underlayCallback"
来电中指定"new Dygraph()"
选项。使用HTML Canvas上下文绘制线条。
以下示例: (xmin和xmax是你的unix纪元时间,以毫秒为单位)
var yavg= 50, xmin=1357016400000, xmax=1359694800000;
new Dygraph(document.getElementById('graph1'), data,{
(....other options....),
underlayCallback:function(ctx,area,dygraph){
var xl = dygraph.toDomCoords(xmin,yavg);
var xr = dygraph.toDomCoords(xmax,yavg);
ctx.strokeStyle= 'green';
ctx.beginPath();
ctx.moveTo(xl[0],xl[1]);
ctx.lineTo(xr[0],xr[1]);
ctx.closePath();
ctx.stroke();
}});
答案 1 :(得分:1)
您的选择是使用底层回调(ala http://dygraphs.com/tests/highlighted-region.html)或添加第二个常量数据系列。