在dygraphs中,默认情况下,选择图形的一个区域将突出显示该区域。释放鼠标按钮时,图形将放大到所选区域。
如果为'showRangeSelector: true‘,则禁用此行为。用户无法与图形交互。
我希望用户能够选择一个区域,突出显示它。在释放鼠标按钮时,所选区域将保持高亮显示,并使用高亮显示区域的开始和结束位置触发事件。
您可以想象它的许多用途(例如,打印与高亮显示区域中包含的数据相关的各种统计数据,等等)。
发布于 2015-06-23 21:10:32
是的,我实现了你所说的,并且它起作用了。为了只选择区域而不进行缩放,您可以将此代码包含在"zoomCallback“事件中。
zoomCallback:function(minDate,maxDate,yRanges){
this.updateOptions({
dateWindow: null,
valueRange: null
});
}现在你有了minDate和maxDate,所以你可以使用"underlayCallback“事件来突出显示选定的区域。
underlayCallback:function(canvas,area,g){
var bottom_left = g.toDomCoords(minDate, -20);
var top_right = g.toDomCoords(maxDate, +20);
var left = bottom_left[0];
var right = top_right[0];
canvas.fillStyle = "rgba(255, 255, 102, 1.0)";
canvas.fillRect(left, area.y, right - left, area.h);
}希望它能有所帮助:)
https://stackoverflow.com/questions/29156286
复制相似问题