【ReactNative】react-native-chart-kitを使ってグラフを実装(棒グラフ編)



今回は、ReactNaitveに棒グラフを実装する方法について紹介していきます。

1. 概要

1.1 react-native-chart-kitについて

react-native-chart-kit を使うことで、以下の計7種類のグラフを実装することができます

折れ線グラフ
数値が増減しているか、変化の方向を見ることができるグラフ
折れ線グラフ編  ←こちらの記事で解説

ベジェ折れ線グラフ
折れ線グラフの線が滑らかになったグラフ
折れ線グラフ編  ←こちらの記事で解説

プログレスリング
割合を表示

棒グラフ  ←本記事で解説
棒の高さで、数値の大小を比較することが可能

積み上げチャート  ←本記事で解説
2つ以上の棒が組み合わさった棒グラフ。よく、累計を出す時に使う。

円グラフ
全体の中での構成比を表す

貢献度グラフ(ヒートマップ)
エリアごとにデータの数値を強弱で色分けしたグラフ。
また、開発者の貢献活動を表示するためによく使用されます。


以上のグラフをreact-native-chart-kitライブラリを使うことで表示させることができます。

本記事では、「棒グラフ」と「積み上げチャート」について実装していきます。

React Native Expoではじめるスマホアプリ開発 ~JavaScriptによるアプリ構築の実際~

新品価格
¥4,268から
(2020/7/27 08:59時点)

2. パッケージのインストール

以下のコマンドを実行して、chart-kitライブラリをインストールします。


また、プロジェクト起動後に「react-native-svg」もインストールしてください。と言われるので、先に以下のコマンドを実行してインストールします。

3. 棒グラフ

3.1 コンポーネントのインポート

3.2 基本的な使い方(実装方法)

主に以下の3点を設定する必要があります。

data
名前 説明
labels 横軸のラベル
datasets 縦軸のデータ(数値)


chartConfing
名前 説明
backgroundGradientFrom 背景の線形グラデーションの最初の色
backgroundGradientFromOpacity 背景の線形グラデーションの最初の色の不透明度
0(透明)〜1(不透明)の値で表す。0の時は、無色。
backgroundGradientTo 背景の線形グラデーションの2番目の色を定義
backgroundGradientToOpacity 背景の線形グラデーションの2番目の色の不透明度
0(透明)〜1(不透明)の値で表す。0の時は、無色。
fillShadowGradient グラフの色
fillShadowGradientOpacity グラフの色の不透明度
0(透明)〜1(不透明)の値で表す。
color 数値、ラベルの色
barPercentage グラフの横幅


LineChartコンポーネント
名前 説明
data グラフに表示されるデータ
chartConfig グラフの構成/デザイン
width グラフ全体の横幅
height グラフ全体の高さ
yAxisSuffix グラフの縦軸テキストの後に表示されるテキスト
fromZero 最小値が0から始まる
showValuesOnTopOfBars バーの上に値を表示


3.3 サンプルコード

react-native-chart-kit を参考に作成


結果



4. 積み上げチャート

4.1 コンポーネントのインポート

4.2 基本的な使い方(実装方法)

棒グラフと同様に以下の3点を設定する必要があります。

data
名前 説明
labels 横軸のラベル
legend 縦軸のデータの数(名称)
data 縦軸のデータ(数値)
barColors グラフの色


chartConfing
名前 説明
backgroundGradientFrom 背景の線形グラデーションの最初の色
backgroundGradientFromOpacity 背景の線形グラデーションの最初の色の不透明度
0(透明)〜1(不透明)の値で表す。0の時は、無色。
backgroundGradientTo 背景の線形グラデーションの2番目の色を定義
backgroundGradientToOpacity 背景の線形グラデーションの2番目の色の不透明度
0(透明)〜1(不透明)の値で表す。0の時は、無色。
color 数値、ラベルの色
barPercentage グラフの横幅


LineChartコンポーネント
名前 説明
data グラフに表示されるデータ
chartConfig グラフの構成/デザイン
width グラフ全体の横幅
height グラフ全体の高さ


3.3 サンプルコード

react-native-chart-kit を参考に作成


結果


5. 参考

react-native-chart-kit



5. まとめ

今回は、「棒グラフ」と「積み上げチャート」について実装しました。
折れ線グラフと実装の仕方も同じような感じですね。
dataプロパティにグラフ化したい値を設定するだけで、グラフ化できるので、かなり便利です。

以下に折れ線グラフについての記事のリンクも貼っておきます。