このページの内容

Awesome Dataviz

Datavizを扱う資料や関連プロジェクトをまとめたAwesomeリストです。

目次

JavaScriptツール

チャートライブラリ

  • ApexCharts - モダンでインタラクティブなSVGチャート
  • Chart.js - キャンバスタグを使ったチャート
  • Chartist.js - ブラウザ互換性の優れたレスポンシブチャート
  • dc.js クロスフィルタとネイティブに連携できる多次元チャート
  • Dygraphs - 巨大データセットに対応するインタラクティブなラインチャートライブラリ
  • Echarts - 大規模データセットに最適化された高度にカスタマイズ可能なインタラクティブチャート
  • Epoch - リアルタイムチャートの作成に最適
  • Google Charts - ブラウザおよびモバイルデバイス向けのインタラクティブチャート
  • G2 - アリババが維持する、グラフィックの文法に基づくインタラクティブかつレスポンシブなチャートライブラリ
  • GraphicsJS - SVG/VMLに基づく直感的なAPIを持つ軽量JSグラフィックライブラリ
  • lit-line - 軽量、高速、インタラクティブで完全レスポンシブなSVG折れ線チャートWebコンポーネント
  • MetricsGraphics.js - タイムシリーズデータに最適化
  • NVD3 - d3.jsで書かれた再利用可能なチャートライブラリ
  • Plotly.js - 20種類のチャートに対応する強力な宣言型ライブラリ
  • React wrapper
  • TechanJS - 株式および金融チャート
  • TOAST UI Chart - 完全なライブラリで、古くからのブラウザにも対応しています。
  • Vizzu - アニメーションされたデータ可視化およびデータストーリーを実現するライブラリ。

グラフ用チャートライブラリ

  • Cola.js - 制約に基づく最適化技術を使って図を生成するツール。d3とsvg.jsと連携。
  • Cytoscape.js - JavaScriptによるグラフ描画ライブラリ。Cytoscapeの中核開発者が保守しています。
  • Sigma.js - グラフ描画に特化したJavaScriptライブラリ。
  • VivaGraph - JavaScript用のグラフ描画ライブラリ。
  • G6 - JavaScriptとTypeScriptで構成されたグラフ可視化ライブラリ。アリババが維持しています。
  • diagram.js - CamundaのオンラインBPMNモデル作成に用いられるJavaScriptの図形ライブラリ。
  • Uber React Digraph - UBERが維持するReact.jsベースの有向グラフライブラリ。

地図

  • CARTO - CARTOはウェブ上で地理空間データの保存と可視化を行うオープンソースツールです。
  • Cesium - WebGLによる3D地球と地図。
  • Deck.gl - 大規模データセットの可視探索分析用のWebGLフレームワーク。
  • L7 - 大規模なWebGLによる地理空間データ可視化分析フレームワーク。アリババが維持しています。
  • L7 Plot - 地理空間可視化チャートライブラリ。アリババが維持しています。
  • DataMaps - D3.jsを使用したインタラクティブなSVG地図。
  • Dipper - L7を基盤としたマップアプリケーション開発フレームワーク。アリババが維持している。
  • Leaflet - モバイル対応のインタラクティブマップを実現するJavaScriptライブラリ。
  • Mapael - raphael.jsに基づくjQueryプラグインでベクターマップを表示。

d3

React

  • BizCharts - G2とReactを基盤としたデータ可視化ライブラリ。
  • Graphin - ReactとTypeScriptを活用したグラフ可視化ライブラリ(G6をベースに構築、アリババが維持)。
  • React-vis - データ可視化を構築するReactコンポーネント。
  • Recharts - D3チャートをレンダリングする宣言型Reactコンポーネント。
  • Victory - インタラクティブなデータ可視化を構築する、組み合わせ可能なコンポーネント。
  • nivo - Reactで構築された強力で組み合わせ可能なデータ可視化コンポーネント。demo
  • React Svg Textures - Textures.jsをReactへ移植した、完全に組み合わせ可能なコンポーネント。
  • DevExtreme React Chart - BootstrapおよびMaterial Design向けの高性能プラグインベースReactチャート。

React Native

  • F2 - モバイル対応でエレガントでインタラクティブかつ柔軟なチャートライブラリ。アリババが維持。

その他

  • Graphology - JavaScriptおよびTypeScript向けに強固で多目的なグラフオブジェクト。他のグラフ可視化ライブラリのベースとして機能。
  • Piecon - ファビコンへ円グラフを表示。
  • Textures.js - SVGパターンを作成するライブラリ。
  • Timeline.js - インタラクティブなタイムラインを作成する
  • Vega - Vegaは、視覚化の文法であり、インタラクティブな視覚化デザインを作成・保存・共有するための宣言型フォーマットである
  • Vega-Lite - 高レベルのインタラクティブグラフの文法であり、分析を支援する視覚化を迅速に生成できる簡潔なJSON構文を提供する
  • Vis.js - タイムライン、ネットワークおよびグラフ(2次元および3次元)を含む動的視覚化ライブラリ

Androidツール

  • DecoView - アニメーション付き円盤チャートライブラリ
  • MPAndroidChart - 強力で使いやすいチャートライブラリ
  • WilliamChart - シンプルなチャートライブラリ

C++ツール

  • LargeVis - LargeVis paperの実装であり、大規模かつ高次元データの可視化に使用される
  • PlotJuggler - Qt5をベースにしたオープンソースアプリケーション(Qwtに基づく)
  • Visualization Toolkit (VTK) - 3Dグラフィックス、画像処理および可視化に用いるオープンソースライブラリ

Goツール

  • svgo - Go言語によるSVG生成用のライブラリ
  • plot - Goでプロットの構築と描画を行うAPI
  • go-echars - シンプルでありながら強力なデータ可視化ライブラリ(Go用)

iOSツール

  • BEMSimpleLineGraph - 高度にカスタマイズ可能でインタラクティブな線グラフ
  • Charts - MPAndroidChartのiOS版。両プラットフォームでのチャートを作成するためには非常に類似したコードを使用できる
  • JBChartView - 線グラフと棒グラフ用のチャートライブラリ
  • PNChart - PinerおよびCoinsManで使用されているシンプルで美しいチャートライブラリ

機械学習ツール

  • TensorWatch - データサイエンスおよび機械学習用のデバッグと可視化ツール

Pythonツール

  • altair - Vega-Liteに基づく宣言型統計可視化
  • bokeh - Python用のインタラクティブなウェブプロット
  • Chartify - データサイエンティストがチャートを作成しやすいようにしたBokehのラッパー
  • diagram - UTF-8文字を使用したテキストモードの図示
  • ggplot - Rのggplot2に基づくプロットシステム
  • glumpy - OpenGLを用いた科学的可視化ライブラリ
  • holoviews - 注釈されたデータに基づく複雑で宣言型の可視化
  • ipychart - Jupyter NotebookにおけるChart.jsの力
  • mayai - Pythonによるインタラクティブな科学データ可視化と3Dプロット
  • matplotlib - 2次元プロットライブラリ
  • missingno - matplotlibを基にしたデータ可視化ユーティリティの柔軟なツールセットを提供し、データセットの完全性を迅速に可視化する
  • plotly - plotly.jsに基づいたインタラクティブなウェブベース可視化
  • pptk - 2D/3D ポイントクラウドの可視化と作業
  • PyQtGraph - インタラクティブかつリアルタイムの2D/3D/画像プロットおよび科学・工学用ウィジェット
  • PyVista – Visualisation Toolkit (VTK) を使いやすくした3Dプロットとメッシュ解析インターフェース
  • seaborn - 魅力的で情報量の多い統計グラフィックスを生成するライブラリ
  • toyplot - 小規模で扱いやすく、本格的な用途を目指すPythonプロットツールキット
  • three.py - PyOpenGLに基づく使いやすい3Dライブラリ。Three.jsを参考にした。
  • veusz - PythonによるマルチプラットフォームGUIプロットツールおよびグラフライブラリ
  • VisPy - OpenGLをベースとした高性能科学データ可視化
  • vtk - 3Dコンピュータグラフィックス、画像処理、可視化(Pythonインターフェースを含む)
  • pandas-profiling - 統計解析レポートを可視化で生成し、データ分析を迅速に実行
  • pyechars - EchartsライブラリのPythonバインディング

Rツール

  • ggplot2 - グラフィックの文法に基づいたプロットシステム
  • ggvis - ggplot2に類似した構文を持つデータ可視化パッケージで、豊かなインタラクティブグラフィックスを作成可能
  • lattice - Rにおけるトレリスグラフィックス
  • plotly - インタラクティブなチャート(ggplot2の出力にインタラクティブ性を追加含む)、カートグラムおよびシンプルなネットワーク図
  • rbokeh - BokehへのRインターフェース
  • rgl - OpenGLを用いた3D可視化
  • shiny - インタラクティブなアプリケーション/可視化を作成するためのフレームワーク
  • visNetwork - インタラクティブなネットワーク可視化

Rubyツール

  • Chartkick - Rubyで1行でチャートを作成

マークアップベースのツール

  • mermaidjs - JavaScriptを用いてテキストからチャートを生成する、Markdown風の簡潔なスクリプト言語
  • wavedrom.com - シンプルなテキスト記述からタイミング図や波形を描画

その他のツール

特定のプラットフォームや言語に依存しないツールです。

  • Charted - 任意のデータファイルから自動生成・共有可能なチャートを生成するチャートツール
  • Gephi - 大規模グラフの可視化および操作を行うオープンソースプラットフォーム
  • Kepler.gl - 大規模データセットに対する地理空間分析ツール
  • Mermaid - Markdownに似た記法でテキストから図やフローチャートを生成するツール
  • RAW - CSVやExcelファイルからウェブ可視化を作成
  • Spark - シェル向けのスパークライン。いくつかの implementations in different languages を備えている
  • Visual-Insights - データ分析における自動インサイト抽出および可視化仕様
  • X6 - DAG図、ER図、フローチャートなど、他のアプリケーションの迅速な構築を可能にする図の作成ライブラリ、アリババが維持
  • Graphviz - 入力テキストからSVG、PDF、インタラクティブなWebグラフブラウザー向け出力を生成する、オープンソースのグラフ可視化CLI/ライブラリ。

資料

書籍

カタログ

ポッドキャスト

Twitterアカウント

Webサイト

貢献

  • 最初に重複がないか確認してください。
  • 説明は短く、簡潔で、中立的にしてください。
  • 提案ごとに個別のコミットを作成してください。
  • 必要であれば新しいカテゴリを追加してください。

提案をありがとうございます。

貢献者

  • Fabio Soutoがこのリポジトリを最初に作成しました。fabiosouto.me.
  • Javier Luraschiは現在のメンテナーで、Hal9で予測可視化を構築しています。

この方針に基づく一覧について質問があれば、Twitterの@javierluraschiへ連絡するか、GitHub issueを作成してください。