Reactのチャートライブラリを比較検討してみる
目的
chartライブラリの選定に先駆けて、各ライブラリの比較を行いたい。
仕様やデザイン(Figma)がFIXしていないので、あくまで仮選定。
実装が必要になりそうな仕様
- 棒グラフ(ネガポジのスタックバーチャート)の実装
- 折れ線グラフを混合実装
- 棒グラフは途中期間から色が変わる
- 折れ線グラフは途中期間から点線になる
- etc…?
npm trends
選定基準
- 拡張性(仕様を満たせそうか)
- スター数
- アップロード日
- サイズ
Tips
チャートの描画にはSVGとCanvasがある。
SVG(Scalable Vector Graphics)とCanvasは、ウェブ上でグラフィックを描画するための2つの異なるテクノロジーで、それぞれ特徴と利用シーンが異なります。
SVG(Scalable Vector Graphics)
ベクトルベース: SVGは、数学的な形状とパスに基づいて画像を記述するので、拡大・縮小しても品質が失われません。
DOMとの統合: SVG要素はHTMLのDOM内に存在するので、CSSやJavaScriptでスタイリングや操作が容易です。
アニメーション: CSSアニメーションやJavaScriptを使用してアニメーションを作成することができます。
パフォーマンス: 大量の要素を持つ場合、パフォーマンスが下がることがあります。
まとめ
react-chartjs-2かRechartsが良さそう。
2つのライブラリをハンズオンしてみて、使い勝手の違いなどを確認し、選択したい。