0

我正在使用折线图(Highcharts)来显示每秒动态馈送的预测数据。但是我只想在每个系列中显示 48 个数据。我可以轻松地向系列添加新点,但在添加新元素后找不到删除系列中第一个元素的方法。

setInterval(function () {
  $.get("cross/forecast", { numOfData: 1 }, (function (chart) {
    return function (data) {
      console.log(data);
      var d = jQuery.parseJSON(data);
      // I NEED TO REMOVE FIRST ELEMENTS IN EACH SERIES
      //... something like chart.series[0].removePoint(0,true)
      for (var i = 0; i < d.length; i++) {
        chart.series[0].addPoint(d[i][0], true);
        chart.series[1].addPoint(d[i][1], true);
        chart.series[2].addPoint(d[i][2], true);
      }
    };
  })(chart), "text");
}, 1000);
4

1 回答 1

1

几乎......尝试:

chart.series[0].data[0].remove();

要删除第一个点(data是一个array,数组是基于0的)......这里的工作示例

如果您想在删除周围添加一个 if 语句,您可以使用以下内容检查系列中的点数:

if (chart.series[0].data.length >= 49) {
  chart.series[0].data[0].remove();
}
于 2012-11-15T15:07:33.123 回答