我有一个异步获取大块数据的要求。当我得到第一个块时,我将创建一个新系列,但要包含所有其他块。我想将数据块添加到现有系列中。我可以在Highcharts文档中看到,有addpoint方法,但是它添加了每个点,这将花费很长时间。有没有一种一次性添加一系列数据到系列的方法。在我的情况下,每个数据块都是2500个数据点的数组。

提前致谢。

最佳答案

在ajax回调中,只需获取现有的串行数据,将所需的任何数据追加到序列中,然后重新设置序列数据即可。

callback:
function(msg) {
    var oldData = myChart.get('mySeriesName').data;
    var newData = formatMsgForHighCharts(msg);
    var combinedData= oldData.concat(newData);
    myChart.get('mySeriesName').setData(combinedData);
}


该行:

 var newData = formatMsgForHighCharts(msg);


如果消息已经正确格式化,则不需要在那里,只需将msg.d传递给concat函数。

09-30 13:33
查看更多