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