我有一个要求,我异步获取大块数据。当我得到第一个块时,我创建了一个新系列,但是用于所有其他块。我想将数据块添加到现有系列中。我可以在Highcharts文档中看到,有addpoint方法,但是它会添加每个点,这需要很长时间。有没有办法一次性添加一大块数据到系列。在我的例子中,每个数据块都是2500个数据点的数组。
提前致谢。
答案 0 :(得分:1)
在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函数。