提问者:小点点

chart.js更新条形图的条形图


我使用chart.js在我的网页上有一个BarChart。

我在其中添加了两个数据点

chart.addData([5], "A");
chart.addData([7], "B");

现在我想要更新那些条A和B,而不是删除它们并再次添加它们(我已经想好了如何做到这一点)。我想让它们垂直移动以适应它们的新值,但我无法找到如何访问图表中已经存在的数据。

没有什么比得上

chart.updateData(0,[6]);
chart.updateData(1,[9]);

其中第一个值将是存储数据的索引(F.E.)。

我该怎么做呢?


共1个答案

匿名用户

通常,您希望遍历您的数据对象,添加、删除或替换元素,然后调用.update(更新),就是这样。

这里有一个例子,我在图表的末尾增加了2列:

function addData() {
  myBarChart.data.labels[12] ="2017";
  myBarChart.data.labels[13] ="2018";
  myBarChart.data.datasets[0].data[12] = 500;
  myBarChart.data.datasets[0].data[13] = 600;
  myBarChart.update();
}

更具体地说,在这里,我修改了一年的值:

function adjust2016() {
  myBarChart.data.datasets[0].data[11] = 300;
  myBarChart.update();
}

完整示例:

Codepen Chart.js添加替换数据示例