ChartJS 图表J线图添加数据动画

qhhrdooz  于 2022-11-06  发布在  Chart.js
关注(0)|答案(1)|浏览(182)

我正在尝试用ChartJs v3.9.1制作一个“Movie-Chart”,我在其中添加和删除数据:
https://codepen.io/ipax77/pen/YzLrNEM

<...>
let chartdata = { x: label, y: stepdata.Winrate };
chart.data.labels.push(label);
chart.data.datasets.forEach(dataset => {
  if (dataset.label == stepdata.Commander) {
    dataset.data.push(chartdata);
    dataadded = true;
  }
});
chart.update();
<...>
if (chart.data.labels.length > 6) {
  let removelabel = chart.data.labels[0];
  chart.data.labels.splice(0, 1);
  chart.data.datasets.forEach(dataset => {
    const index = dataset.data.findIndex(obj => obj.x == removelabel);
    if (index > -1) {
      dataset.data.splice(index, 1);
    }
  });

不知何故,新数据点的动画从x轴开始,而不是从先前的数据点开始。有什么方法可以解决这个问题吗?
我试着使用时间刻度轴和chartjs-adapter-date-fns来解决这个问题,但是没有以第一个标签开始的线的动画被弄乱了。

nwlqm0z1

nwlqm0z11#

通过定义options.animation,可以禁用y轴上的动画,如下所示:

options: {
  responsive: true,
  animation: {     
    y: {
      duration: 0 
    }
  },

相关问题