1

我每 1 秒在柱形图中添加点。我已经使用 addPoint 函数来串联添加点。但是当点数> 5时我想删除第一个点。请参见下面的代码:

  setInterval(() => {
          let data = self.loadData();
          let seriesData = this.userOptions.series[0].data;
          let newDataRejected = seriesData;
          if (seriesData.length > 5) {
            self.chart.series[0].data[0].remove();#ERROR
          }
          data.subscribe(el => {           
            this.series[0].addPoint([el.x, el.rejected]);              
          })
        }, 1000);

但在 LINE #ERROR 我得到错误Cannot read property '0' of undefined。如何在专栏聊天中添加和删除积分?

4

1 回答 1

2

与其手动删除第一个点,更好的解决方案是使用addPoint函数的 shift 属性。

然后你需要做:

setInterval(() => {
  let data = self.loadData();
  let seriesData = this.userOptions.series[0].data;
  let newDataRejected = seriesData;
  if (seriesData.length > 5) {
    data.subscribe(el => {           
      this.series[0].addPoint([el.x, el.rejected], true, true);              
    })
  } else {
    data.subscribe(el => {           
      this.series[0].addPoint([el.x, el.rejected], true, false);              
    })
  }

}, 1000);

工作示例: https ://jsfiddle.net/ewolden/1c5hkj8g/

于 2018-09-12T09:32:38.097 回答