15
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

react-chartjs-2とChart.jsを使ってグラフを作ってみた

Last updated at Posted at 2019-10-02

最近Reactを勉強しており、その際にグラフを作りたいと思いました。react-chartjs-2の提供もされていたので、今回は「Chart.js」を使用することにしました。

今回は線グラフですが、他にも円グラフや棒グラフなど色々あります。
https://jerairrest.github.io/react-chartjs-2/
また詳しい導入法は公式ドキュメントから確認できます。
https://github.com/jerairrest/react-chartjs-2

完成時のイメージとコードは下です。
スクリーンショット 2019-10-02 21.18.14.png
必要となる「react-chartjs-2」と「chart.js」のインストール

yarn add react-chartjs-2 chart.js
App.js
import React from "react";
import LineExample from './Line';

function App() {
  return (
    <div className='App'>
      <LineExample />
    </div>
  );
}

export default App;
Line.js
import React from 'react';
import {Line} from 'react-chartjs-2';

const data = {
  labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
  datasets: [
    {
      label: 'My First dataset',
      fill: true,
      lineTension: 0.1,
      backgroundColor: 'rgba(75,192,192,0.4)',
      borderColor: 'rgba(75,192,192,1)',
      borderCapStyle: 'round',
      borderDash: [],
      borderDashOffset: 0.0,
      borderJoinStyle: 'square',
      pointBorderColor: 'rgba(75,192,192,1)',
      pointBackgroundColor: '#eee',
      pointBorderWidth: 10,
      pointHoverRadius: 5,
      pointHoverBackgroundColor: 'rgba(75,192,192,1)',
      pointHoverBorderColor: 'rgba(220,220,220,1)',
      pointHoverBorderWidth: 1,
      pointRadius: 1,
      pointHitRadius: 10,
      data: [3, 10, 21, 31, 34, 40, 48]
    }
  ]
};

const LineExample = () => {
  return (
    <div>
      <h2>Line Example</h2>
      <Line data={data} />
    </div>
  );
}

export default LineExample;

上の例では一つの線グラフでしたが、複数のグラフを表示することもデザインを加えることもできます。
スクリーンショット 2019-10-02 21.17.12.png
複数のグラフを表示する方法がわからなかった時に参考になったstackoverflowも一緒にのせておきます。
create a multi line chart using Chart.js

参考文献
react-chartjs-2
react-chartjs-2のgithub
create a multi line chart using Chart.js

15
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?