我在散点图Highchart上反复使用AddPoint来显示一些数据演变,使用
setinterval()
当图表由于存在新数据点而更新轴的范围时,图表有时会“抽搐”,因为数据分布在原点周围不再 balancer :
http://jsfiddle.net/dhigger/qfxe87tr/
我想保持轴的重新绘制以适应各种数据分布,因此一种解决方案是始终将原点保持在图形的中心,并将轴的正负比例放在一起,并始终按比例放大 . 但我看不出如何实现这些目标 .
有没有办法避免抽搐?
我在散点图Highchart上反复使用AddPoint来显示一些数据演变,使用
setinterval()
当图表由于存在新数据点而更新轴的范围时,图表有时会“抽搐”,因为数据分布在原点周围不再 balancer :
http://jsfiddle.net/dhigger/qfxe87tr/
我想保持轴的重新绘制以适应各种数据分布,因此一种解决方案是始终将原点保持在图形的中心,并将轴的正负比例放在一起,并始终按比例放大 . 但我看不出如何实现这些目标 .
有没有办法避免抽搐?
2 回答
那些"twitches"来自Highcharts的原生轴自动缩放 . 您可以修复
xAxis
,这样您的图表就不会再移动了 . 例如,我设法通过为xAxis
添加min: -15
来使您的JSFiddle工作:请参阅JSFiddle使用不"twitches" here .
设置轴的极限后(按@ Kabulan0lak的答案),我发现通过跟踪最大幅度的数据值然后重新设置轴的最大和最小极限,我可以单轴增加正轴和负轴限制 . 手动使用
setExtremes
(manual) .例如
chart.xAxis[0].setExtremes(min_x,max_x);
更新了jsfiddle:http://jsfiddle.net/dhigger/qfxe87tr/3/