ChartJS 什么是更新图表的示例

huus2vyu  于 2022-12-23  发布在  Chart.js
关注(0)|答案(1)|浏览(160)

我尝试制作被动更改的图表,因此我更改了一些值,然后更改了计算出的ChartData()将其放入组件,但没有任何效果。我正在尝试使用更新()函数,但我没有它的示例。如何将函数用作.update(),.destroy()为我的LineChart当我没有它的示例?我可以得到图形的示例吗?什么是错的?我想我有2个方法来更新它?是吗?

**Update:**实际上我得到了示例,但问题仍然存在。计算属性不更新Line中的数据,update()不做任何事情。

<template>
    <div class="graph__busManag">
      <Line ref="Graph" id="Chart" :data="ChartData" :options="options" :plugins="plugins" />

    </div>
</template>

<script>

import {
  Chart as ChartJS,
  CategoryScale,
  LinearScale,
  PointElement,
  LineElement,
  Title,
  Tooltip,
  Legend,
} from "chart.js";
ChartJS.register(
  CategoryScale,
  LinearScale,
  PointElement,
  LineElement,
  Title,
  Tooltip,
  Legend
);
import { Line } from "vue-chartjs";

data() {
    return {
        data: ...something,
        option: ...somedata,

},
  computed: {
    ChartData() {
      return this.data; // Should update graph, but doesn't , despite the fact that it is constantly triggered
    }
  },
  mounted() {
      this.data.datasets.data = [50, 60, 70, 80, 90, 100];
      this.data = {...this.data};

      const chartInstance = this.$refs.Graph.chart

      console.log(chartInstance);
      chartInstance.update(); // not working
      chartInstance.reset(); // not w
  },
}
xzv2uavs

xzv2uavs1#

您可以使用静态方法getChart,向该方法传递您为图表指定的ID。在这里,您将返回图表示例,您可以向该示例调用update:

import { Chart } from 'chart.js';

const chartInstance = Chart.getChart(ownChartId);

相关问题