1

我有一个折线图,其数据连续更新为 5000 条记录。
但是在某个随机点,我想停止当前正在进行的绘图并从非常大的地方重新绘制图表。

我有下面的代码来清除图表。

function resetChart() {
   chart.stop();
   chart.clear();
   chart.reset();

   chart.data.datasets[0].data = [];
   chart.update();
}

我正在将数据推送到以下代码中的图表:

function updateData(myarray) { 
   for (var i=0;i < myarray.length;i++) {
     if (stopRender) {
        stopRender = false;
        resetChart();
        break; 
     }

     chart.data.datasets[0].data.push(myarray[i]);
   }
   chart.update();
}

如果我收到停止渲染,那么我会停止并清除图表。
但是有时图表上显示的数据并没有被清除,它会再次开始绘制新数据,从而弄乱图表。停止和重绘新数据之间有大约 1 秒的延迟。

我想清除图表中的所有数据并开始重绘新数据,而不创建新图表或画布。

4

0 回答 0