有没有办法绕过'setData'在海图的面积图上

Is there a way to get around 'setData' on a highcharts area chart?

本文关键字:面积图 setData 有没有      更新时间:2023-09-26

我有一个工作highcharts区域图,我初始化它时,它的系列中几乎没有数据,只有4个系列,每个系列一个点。然后我调用:

function(output){
  var chart = $('#mychart').highcharts();
  chart.series[0].setData(output[0]);
  chart.series[1].setData(output[1]);
  chart.series[2].setData(output[2]);
  chart.series[3].setData(output[3]);
}

这很好。之后,数据被更改,我再次调用相同的函数,它可以工作,但问题在于它花费的时间。

我设置了日志记录来记录这个函数所花费的时间。第一次运行大约需要140ms,接下来的几次更新平均需要2秒。

为什么要花这么长时间?有什么办法可以加快速度或者绕过它吗?

很抱歉发布这个问题,但我将把这个答案留给任何遇到同样问题的人:

问题是我使用的数据。在第一次迭代中,我使用了一个简单的数组:

[123,912]

其余时间,我使用对象数组:

[{y: 123},{y: 912}]

由于某种原因,这相当于具有不同的加载速度。从现在开始,如果需要快速的性能,似乎你必须尽自己的一份力量来帮助highcharts。