Data Race

グラフの種類を理解する

Data Raceは、各データセットに対して9つの異なるチャートモードと、正確な数値のためのデータテーブルを提供します。各モードは、ランキング、トレンド、構成、地理的パターン、順位の推移、全体の流れ、または直接的な大きさの比較など、データの異なる側面を強調します。このガイドでは、それぞれの視覚化が何を示し、どのように読み取り、いつ最も役立つかを説明します。

バーチャート

バーチャートはData Raceの代表的なビジュアライゼーションです。ランク付けされたエンティティを横棒として表示し、最も長い棒が最高値を表します。アニメーションが進むにつれて、棒はランキングの変化を反映して上下に移動し、ダイナミックなレース効果を生み出します。各棒には色分けされ、エンティティ名、旗(国の場合)、現在の値がラベル表示されます。

いつ使うか: 時間の経過に伴うランキングの変化を確認したい場合に使用します。適度な数のエンティティ(10〜20件)を比較し、劇的な順位上昇や下落を発見するのに特に効果的です。

  • 棒の長さが値を表します。長い棒ほど値が高い
  • 棒の位置がランクを示します。最上位の棒が1位
  • 時間帯間のスムーズな遷移がランキングの変化を表す
  • 色はアニメーション全体を通じてエンティティごとに一貫している

バンプチャート

バンプチャートは、各エンティティの順位を時系列で 1〜N の軸にプロットします(1位が一番上)。順位が変動すると線が上下し、線が交差した瞬間が「追い越し」の瞬間です。注目するのは絶対値ではなく順序そのもの——1位争いが僅差でも巨大な差でも、見た目は同じになります。ピン留めされたエンティティは線とドット周囲のハロが強調表示されます。

いつ使うか: 順位の入れ替わりが物語の主役のときに使います。オリンピックメダル順位、過去100年のトップ10経済国、リーダーボードの変動など、「誰がいつ誰を追い越したか」を最もクリアに見せられます。

  • Y軸は順位:上が1位、下がN位
  • 線が下がる/上がる = そのエンティティが順位を獲得/喪失
  • 線が交差 = その期間で一方が他方を追い越した
  • 水平な線は順位が変わらなかった期間
  • 表示中のtop-N圏外にいるピン留めエンティティはチャート下部にチップで表示される

ラインチャート

ラインチャートは、各エンティティの時間経過に伴う値の変化を連続した線としてプロットします。すべてのエンティティが同じ軸上に表示されるため、長期的なトレンドを比較しやすくなっています。チャートは現在の時間帯を縦線マーカーでハイライトし、任意の点にホバーすると正確な値を確認できます。ピン留めされたエンティティは太い線で強調され、それ以外はフェードアウトされます。

いつ使うか: 時間の経過に伴うトレンドを追跡したい場合、成長軌跡を比較したい場合、または一方が他方を追い越すクロスオーバーポイントを特定したい場合に使用します。

  • Y軸が値のスケールを示し、X軸が時間帯を示す
  • 各線が1つのエンティティを表します。線を追うことでその軌跡がわかる
  • 急な傾きはより速い成長または下落を示す
  • 交差する線はエンティティ間のランキング変化を示す

ストリームグラフ

ストリームグラフは各エンティティの生値をカラーバンドとして中央のベースラインを中心に上下対称に積み上げます。総量の変化はチャート全体の厚みで示されるので、構成と総量を同時に読み取れます。再生すると、ストリームは左から有機的に流れ込んできて、バンドが現れ、膨らみ、再構成されていく——全体が1つの大きな塊として動いて見えます。単調増加するデータセット(GDP、人口、マーケットキャップ等)で最も効果を発揮します。

いつ使うか: 全体を一つの流れる塊として体感したいときに使います。世界GDPの爆発と地域構成の入れ替わり、OSSエコシステムの拡張と世代交代、市場全体の膨張とセクターローテーションなど、「総量と構成の両方が動く」物語に最適です。

  • バンドの厚み = その期間のそのエンティティの値
  • 総チャート高 = 表示中エンティティ(top-N + その他)の合計
  • 再生するとバンドが左から伸びていく。先端が「現在」の瞬間
  • 中央線は y=0 で固定、上下対称に膨らむ
  • 各バンド内にflagが表示される。薄いバンドでは色のスライバーだけが見える

パイチャート

パイチャートは、特定の時間帯における値の構成を表示します。各スライスは全体に対するエンティティのシェアを表します。アニメーションが進むにつれて、スライスのサイズが変化する割合を反映して調整されます。少数の大きなエンティティが全体を支配している場合に最も情報量が多く、集中度や多様化のパターンを明らかにします。

いつ使うか: 各エンティティが全体に占めるシェアを把握したい場合、たとえばどの国が最も多くCO₂を排出しているか、最大のGDPシェアを持っているかを確認したい場合に使用します。

  • スライスのサイズはエンティティの全体に対するシェアを表す
  • スライスにホバーすると正確な割合と値が表示される
  • 小さなスライスは可読性を維持するために「その他」にまとめられる
  • 時間の経過とともに拡大・縮小するスライスに注目して覇権の変化を把握する

ツリーマップ

ツリーマップは、チャート領域を長方形に分割します。各長方形のサイズは、エンティティの値に比例しており、値が大きいほど長方形も大きくなります。d3-treemapResquarifyアルゴリズムは、期間全体で形状を正方形に保つため、長方形はカオス的に再配置されるのではなく、スムーズにスライドおよびサイズ変更されます。上位N未満のロングテールエンティティは、「その他」のタイルにまとめられ、他のタイルとともに拡大・縮小します。

いつ使うか: 「全体のうち各エンティティがどれだけを占めているか」が物語の主役であり、スクロールや個別のビューへの分割なしに、すべてのエンティティを1つのフレームに収めたい場合にツリーマップを使用します。

  • 長方形の面積はエンティティの値に比例します
  • 最大の長方形が1位です(通常、左上に固定されます)
  • レイアウトが期間間で更新されても形状は正方形に保たれ、可読性を維持します
  • 上位N未満のタイルは「その他」の長方形にまとめられます
  • 旗、名前、値は各長方形の内部に表示されます。細いタイルでは旗が表示されません

コロプレスマップ

マップは連続的なカラースケールを使って、値に応じて国を色付けします。より暗いまたは鮮やかな色は高い値を示します。マップは即座に地理的な概観を提供し、他のチャートの種類では気づきにくい地域的なパターンやクラスターを浮き彫りにします。任意の国にホバーすると、その名称、値、ランクが表示されます。

いつ使うか: 地理が重要な場合に使用します。地域クラスターの特定、隣国との比較、または変数が大陸をまたいでどのように分布しているかを確認したい場合に最適です。

  • 色の濃さが値に対応します。凡例でスケールを確認してください
  • グレーの国は選択した時間帯のデータがありません
  • 地域的なパターン(例:ヨーロッパのクラスター、サブサハラベルト)が視覚的に把握しやすい
  • 正確な値はホバーで確認。クリックすると国をピン留めして比較できる

バブルマップ

バブルマップは比例記号地図です。各エンティティは、その国(または地域)の中心に固定された円として描画され、円の半径は値に比例します。位置は決して動きません。半径と色だけがアニメーションします。その結果、時間が経過するにつれてその場で拡大・縮小する地理的なスナップショットが作成され、「どこで」と「どれくらいの大きさ」の両方を1つのビューで簡単に確認できます。

いつ使うか: 地理と大きさを組み合わせた単一の視覚化が必要な場合にバブルマップを使用します。たとえば、市場の時価総額が米国の沿岸のいくつかの都市に集中し、アジアやヨーロッパで小さなバブルが点灯する様子を観察する場合などです。

  • 円の位置は各国の中心に固定されています
  • 円の半径は現在の期間の値に比例します
  • 値は円の中心に配置されます(旗はありません - 場所がエンティティを識別します)
  • 色はエンティティのカテゴリパレットに従い、上位Nから外れるとフェードアウトします
  • データがない期間は、そのエンティティの円は表示されません

バブルチャート

バブルチャートは、各エンティティを値によってサイズが決定される自由浮遊する円として配置し、d3-forceによって衝突を解決し、円が重なり合わずに密にクラスター化されるようにします。パックレイアウトは期間ごとに再計算され、スムーズなアニメーションのために隣接する期間間でlerp(線形補間)されます。軸はありません。位置には量的な意味はなく、サイズのみが意味を持ちます。グローバルな√(value)スケールにより、データが変化しても最大のエンティティが確実に最大として維持されます。

いつ使うか: 軸や地理から解放された純粋な大きさの比較が必要な場合にバブルチャートを使用します。上位のエンティティ間で「どちらがどれだけ大きいか」を一目で比較するのに最適です。

  • 円の半径は√(value)に比例します — 最大のエンティティが最大の円になります
  • 位置は装飾的なものであり、円は漂いますが、そのピクセル位置には値の意味はありません
  • 旗はスペースがあれば18pxで表示されます。4px未満の円では非表示になります
  • 集計モード(地域/グループ)では、値が中央に配置され、旗はありません
  • 色はエンティティのカテゴリパレットに従います

データテーブル

データテーブルは、すべての値を並び替え・スクロール可能なグリッドで表示します。各行にはエンティティのランク、名前、値、世界シェア、前年比変化が示されます。アニメーション付きグラフとは異なり、テーブルは正確な数値を表示するため、詳細な比較やデータ検証に最適です。任意の列で並び替えて、トップパフォーマー、最も変動の大きいエンティティ、または特定のエンティティを見つけることができます。

いつ使うか: 視覚的な印象ではなく正確な数値が必要な場合に使用します。ファクトチェック、詳細な比較、またはデータをエクスポートしてさらに分析する場合に最適です。

  • 「値」列で並び替えると最高値または最低値のエントリが表示される
  • 「変化」列は前の時間帯からの成長または下落を示す
  • 「シェア」列で世界全体に対する各エンティティの割合を比較できる
  • テーブルをCSVでダウンロードしてスプレッドシートや研究に活用できる

チャートの選び方

各チャートタイプは異なる質問に答えます。バーチャートは「今、誰が勝っているのか?」に答えます。バンプチャートは「誰が誰を順位で追い抜いたのか?」に答えます。ラインチャートは「各値はどのように変化したか?」に答えます。ストリームグラフは「全体がどのように一体となって流れるか?」に答えます。パイチャートは「この瞬間、それぞれがどれだけのシェアを占めているか?」に答えます。ツリーマップは「全体のうちそれぞれがどれだけを占めているか?」に答えます。コロプレスマップは「地理的にどこで値が最も高いか?」に答えます。バブルマップは「どれくらいの大きさで、どこに?」に答えます。バブルチャートは「生の値はどのように比較されるか?」に答えます。そして、テーブルは「正確な数値は何か?」に答えます。同じデータセットのビューを切り替えることで、複数の角度からデータの全体像を把握できます。

  • ランキングと競争 → バーチャート
  • 順位の推移と追い抜き → バンプチャート
  • 長期的なトレンドと推移 → ラインチャート
  • 時間とともに流れる構成 → ストリームグラフ
  • ある瞬間のシェア → パイチャート
  • すべてのエンティティを1つのフレームに凝縮 → ツリーマップ
  • 地理的パターン → コロプレスマップ
  • 地理 + 大きさを1つのビューで → バブルマップ
  • 純粋な大きさの比較 → バブルチャート
  • 正確な値とエクスポート → データテーブル