资讯专栏INFORMATION COLUMN

Chart.js使用小结_024

tuomao / 607人阅读

摘要:使用小结官方文档英文文档中文文档在中的使用开始使用在相应的页面中引入先写一个小的作图动态更新的数据作图更新数据

Chart.js使用小结 官方文档
英文文档 https://www.chartjs.org/docs/...

中文文档 https://chartjs-doc.abingoal.com

react中的使用 开始使用
npm install chart.js --save

在相应的页面中引入 chartjs

import Chart from "chart.js"

先写一个小的demo

import React from "react";
import ReactDOM from "react-dom";

import Chart from "chart.js";

class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = {};
  }
  componentDidMount() {
  this.renderCanvas()
  }

  // 作图
  renderCanvas = () => {
    const myChartRef = this.chartRef.getContext("2d");
    new Chart(myChartRef, {
      type: "line",
      data: {
        labels: [1,2,3,4,5],
        datasets: [
          {
            data: [10, 20, 50, 80, 100],
            backgroundColor: "rgba(71, 157, 255, 0.08)",
            borderColor: "rgba(0, 119, 255, 1)",
            pointBackgroundColor: "rgba(56, 96, 244, 1)",
            pointBorderColor: "rgba(255, 255, 255, 1)",
            pointRadius: 4
          }
        ]
      },
      
      options: {
        responsive: true,
        legend: {
          display: false
        },
        maintainAspectRatio: false
      }
    });
  };

  render() {
    return (
      
(this.chartRef = ref)} />
); } } const rootElement = document.getElementById("root"); ReactDOM.render(, rootElement);

https://codesandbox.io/embed/...
动态更新的数据
import React from "react";
import ReactDOM from "react-dom";

import Chart from "chart.js";
let currentChart;

class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      data: [30, 60, 90, 120, 100]
    };
  }
  componentDidMount() {
    this.renderCanvas();
    this.renderCurrent();
  }

  // 作图
  renderCanvas = () => {
    const myChartRef = this.chartRef.getContext("2d");
    new Chart(myChartRef, {
      type: "line",
      data: {
        labels: [1, 2, 3, 4, 5],
        datasets: [
          {
            data: [10, 20, 50, 80, 100],
            backgroundColor: "rgba(71, 157, 255, 0.08)",
            borderColor: "rgba(0, 119, 255, 1)",
            pointBackgroundColor: "rgba(56, 96, 244, 1)",
            pointBorderColor: "rgba(255, 255, 255, 1)",
            pointRadius: 4
          }
        ]
      },

      options: {
        responsive: true,
        legend: {
          display: false
        },
        maintainAspectRatio: false
      }
    });
  };

  renderCurrent = () => {
    const { data } = this.state;
    const currentCharttemp = this.currentChart.getContext("2d");
    if (typeof currentChart !== "undefined") {
      currentChart.destroy();
    }
    currentChart = new Chart(currentCharttemp, {
      type: "line",
      data: {
        labels: [1, 2, 3, 4, 5],
        datasets: [
          {
            data: data,
            backgroundColor: "rgba(71, 157, 255, 0.08)",
            borderColor: "rgba(0, 119, 255, 1)",
            pointBackgroundColor: "rgba(56, 96, 244, 1)",
            pointBorderColor: "rgba(255, 255, 255, 1)",
            pointRadius: 4
          }
        ]
      },

      options: {
        responsive: true,
        legend: {
          display: false
        },
        maintainAspectRatio: false
      }
    });
  };

  render() {
    return (
      
(this.chartRef = ref)} />
(this.currentChart = ref)} />
); } }
https://blog.bitsrc.io/custom...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/106551.html

相关文章

  • 来自Chart.js的几个JS helper function

    摘要:最近兼职的项目里面因为要用进行数据的交互式可视化,用比较多,也踩了不少坑。内部用这个进行之类的时,先深拷贝然后再扩展,比较方便。可以看出直接给原型进行扩展,写起来非常简洁。 最近兼职的项目里面因为要用charts进行数据的交互式可视化,用Chart.js比较多,也踩了不少坑。为了改bug提pr外加学习一下提高姿势水平花了一点时间看了下源码,发现一些比较有用简介的helper funct...

    Kross 评论0 收藏0
  • es6基础0x024:babel简单使用

    摘要:简单的说就是,新语法编译器旧语法。说明所以,对于新特性,我们可以通过使用,也可以通过语法转化来达到兼容。 0x001 polyfill 我们都知道,js总是一直存在着兼容性问题,虽然其他语言也存在着兼容性问题,比如c++、java,但那种兼容性是新特性在旧版本上的不兼容,js则存在着各种奇形怪哉的不兼容。这其中有着非常复杂的历史和时代的原因,并不加以累述。而解决兼容性问题的方法在以前只...

    wangbinke 评论0 收藏0
  • 数据可视化--Chart.js使用总结

    摘要:概述是一个图表库,使用元素来展示各式各样的客户端图表,支持折线图柱形图雷达图饼图环形图等。比较轻量版本仅,且不依赖其他库。附上解决思路是每次切换时移除旧的画布并新建画布,代码如下外的容器节点 概述 Chart.js是一个HTML5图表库,使用canvas元素来展示各式各样的客户端图表,支持折线图、柱形图、雷达图、饼图、环形图等。在每种图表中,还包含了大量的自定义选项,包括动画展示形式。...

    KaltZK 评论0 收藏0
  • chart.js 中文文档 翻译

    摘要:高亮最近的元素高亮同样值的数据高亮所有的数据原色,当鼠标悬浮到块是值被选中。关键字代表的是从构造函数创建的对象。高亮最近的数据悬浮时动画执行的时间,单位,毫秒调用被触发的任何事件动画设置以下动画设置都可生效,全局设置在中定义。 chart.js Configuration文档翻译 tags: chart 文档 翻译 [TOC] Getting start开始 下载 github上获得最...

    y1chuan 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<