我想使用amChart.js创建一个实时图表,所以我正在使用ajax进行实时图表更新。如果我在setInterval
中调用了ajax页面,则图表将完全刷新。实际上,我只需要更改数据。
请从JSFiddle检查我的脚本。
我该如何解决这个问题?
谢谢。
答案 0 :(得分:2)
如果要转换到新的点或值,则“仅更改数据”,则无法替换整个数组。替换整个阵列将始终导致完全重绘。请注意,替换整个数组时通常不需要调用invalidateData
。
如果希望图表转换为新值,则必须更改更新数据的方式。如果您就地更新数据并调用invalidateRawData
,则AmCharts会从一个动画进行过渡,仅当您在就地更新数据并调用invalidateRawData
或使用addData
时才会发生过渡。将数据添加到数组。不知道您的ajax请求中的数据是什么样子,您需要找出最佳方法。
您可以阅读有关如何管理增量/过渡更新here的更多信息。