ChartJS更新包含多个数据集的图表

问题描述 投票:1回答:1

所以我想更新我的图表中的2个数据集(我不想销毁,然后重新创建)。

chart2 = window.TrafficChart;
  chart2.data.labels = data.timestamps;
  console.log(data.traffic_tx);
  chart2.data.datasets[0] = data.traffic_rx;
  chart2.data.datasets[1] = data.traffic_tx; // fails here
  chart2.update();

当我尝试设置第二个数据集(chart2.data.datasets[1] = data.traffic_tx;)然后崩溃不会更新(一切都是空的)。

搜索最近30分钟的解决方案..

javascript json chart.js
1个回答
0
投票

您可以遍历图表以一起更新它们。

以下是ChartJS documentation的代码片段:

function addData(chart, label, data) {
    chart.data.labels.push(label);
    chart.data.datasets.forEach((dataset) => {
        dataset.data.push(data);
    });
    chart.update();
}

function removeData(chart) {
    chart.data.labels.pop();
    chart.data.datasets.forEach((dataset) => {
        dataset.data.pop();
    });
    chart.update();
}

您可能还想检查并查看是否正在访问正确的变量。您是否尝试替换数据集中的整个data对象,或者您是否尝试更新dataset.data属性?

© www.soinside.com 2019 - 2024. All rights reserved.