随着时间的推移,我通过更改数据并重新绘制它们来“动画化”图表.
// initialization var data = ... var targetPlot = $.jqplot('#diagram',data,diagramOptions);
一段时间后,我将以某种方式更改数据,并希望更新图表.以下解决方案有效:
// update Data targetPlot.data = ...; // remove old diagram $('#<%= "diagram" + diagram.id.to_s %>container').empty(); // redraw targetPlot = $.jqplot('#diagram',diagramOptions);
这是一个完整的重绘.由于大量数据和短暂的间隔,jQPlot占用大量内存,图表闪烁.
怎么做对吗?
使用redraw-function的解决方案只绘制旧图:
// update Data targetPlot.data = ...; targetPlot.redraw();