动态添加系列时优化图表渲染

时间:2013-06-18 19:12:55

标签: javascript highcharts

是否有一种优化的方法可以动态地将多个系列添加到已经渲染的具有现有系列的折线图中?

到目前为止,我可以想到两个选择:

1)呼叫Chart.addSeries(graphSeries) n次。

我目前正在使用这种方法,但对于多个系列来说它很慢

2)将新系列添加到JSON对象后,从JSON对象重新初始化图表

Chart = new Highcharts.Chart(graphData);

但这意味着每次都必须重新生成整个图表。

是否有另一种方法可以将新系列批量添加到图表中?

1 个答案:

答案 0 :(得分:1)

我会将chart.addSeries与redraw参数设置为false。完成添加系列后,您可以调用chart.redraw来显示系列。对于任意数量的系列,这只会花费一次重绘,并且不会像从配置中重新创建图表那样昂贵。

chart.addSeries(series1, false);
chart.addSeries(series2, false);
...
chart.addSeries(seriesN, false);

chart.redraw();

http://api.highcharts.com/highcharts#Chart.addSeries()