studio haneya
県内総生産(名目)2022年)・単位:億円
201120222022(最新)
京都 11.1兆円佐賀 3.28兆円熊本 6.57兆円香川 3.97兆円愛知 43.1兆円栃木 9.60兆円山梨 3.71兆円滋賀 7.01兆円群馬 9.76兆円宮城 9.61兆円静岡 18.3兆円茨城 14.6兆円山形 4.34兆円和歌山 4.00兆円長崎 4.65兆円秋田 3.63兆円岡山 7.34兆円福岡 20.2兆円岐阜 8.23兆円青森 4.44兆円大阪 43.1兆円長野 8.92兆円大分 4.90兆円三重 8.49兆円広島 12.5兆円北海道 20.9兆円兵庫 23.5兆円千葉 21.4兆円富山 4.93兆円東京 120.2兆円埼玉 24.7兆円山口 6.31兆円福島 7.87兆円石川 4.72兆円福井 3.49兆円愛媛 5.14兆円奈良 3.92兆円島根 2.75兆円岩手 4.80兆円鳥取 1.91兆円徳島 3.27兆円鹿児島 6.05兆円新潟 9.04兆円高知 2.41兆円宮崎 3.77兆円神奈川 35.2兆円沖縄 4.46兆円沖縄
県内総生産(GDP)ランキング(2022年・全47都道府県)
  1. 1東京120.2兆円
  2. 2大阪43.1兆円
  3. 3愛知43.1兆円
  4. 4神奈川35.2兆円
  5. 5埼玉24.7兆円
  6. 6兵庫23.5兆円
  7. 7千葉21.4兆円
  8. 8北海道20.9兆円
  9. 9福岡20.2兆円
  10. 10静岡18.3兆円
  11. 11茨城14.6兆円
  12. 12広島12.5兆円
  13. 13京都11.1兆円
  14. 14群馬9.76兆円
  15. 15宮城9.61兆円
  16. 16栃木9.60兆円
  17. 17新潟9.04兆円
  18. 18長野8.92兆円
  19. 19三重8.49兆円
  20. 20岐阜8.23兆円
  21. 21福島7.87兆円
  22. 22岡山7.34兆円
  23. 23滋賀7.01兆円
  24. 24熊本6.57兆円
  25. 25山口6.31兆円
  26. 26鹿児島6.05兆円
  27. 27愛媛5.14兆円
  28. 28富山4.93兆円
  29. 29大分4.90兆円
  30. 30岩手4.80兆円
  31. 31石川4.72兆円
  32. 32長崎4.65兆円
  33. 33沖縄4.46兆円
  34. 34青森4.44兆円
  35. 35山形4.34兆円
  36. 36和歌山4.00兆円
  37. 37香川3.97兆円
  38. 38奈良3.92兆円
  39. 39宮崎3.77兆円
  40. 40山梨3.71兆円
  41. 41秋田3.63兆円
  42. 42福井3.49兆円
  43. 43佐賀3.28兆円
  44. 44徳島3.27兆円
  45. 45島根2.75兆円
  46. 46高知2.41兆円
  47. 47鳥取1.91兆円

出典: 内閣府「県民経済計算」令和4年度(生産側・名目)GDPの都道府県版(生産側)。

地図: 国土地理院「地球地図日本」(dataofjapan/landで TopoJSON 化)

仕組み(データと実装)

データの流れ

  1. 取得: e-Stat API(経済センサス/経済構造実態調査/社会・人口統計体系/賃金構造基本統計調査/生産農業所得統計)に加え、内閣府「県民経済計算」のExcel(県内総生産=GDP県版・県民所得)を取得。複数の調査をまたいで横断します。
  2. 整形(ETL): Python(pandasでExcelも解析)で、表ごとに異なる地域コード体系を JIS 都道府県コードに正規化。完全失業率は「完全失業者数÷労働力人口」、サービス業は「第3次産業の売上を合算」など必要な指標を算出し、統一フォーマットの JSON に束ねます(scripts/etl_estat.py)。生産・所得系は 「県内総額/県民1人あたり(÷総人口)/就業者1人あたり(÷就業者数)」の3分母を持たせ、産業区分(全体=GDP・農業・製造業・サービス業)と掛け合わせて比較できます。年次データが取れる指標には時系列(県民経済計算は2011〜2022年度、SSDS系は1990年〜)も同じ JSON に持たせます(経済センサス系は単年調査のため対象外)。
  3. 地図: 都道府県境界 TopoJSON を id=JIS コードで統計値と結合。
  4. 描画: ブラウザ側で topojson-client が TopoJSON→GeoJSON 変換、d3-geo(メルカトル投影+ geoPath)で SVG パス生成。色は d3-scale × d3-scale-chromaticを指標ごとに切替。

指標ごとに色スケールを変える理由

製造品出荷額や農業産出額は分布の偏りが極端(最大と最小で数十〜百倍)。線形だと最大県だけが濃く潰れるため 平方根スケールで中位県の差も見せます。一方、最低賃金・失業率・年収のような率・水準系は範囲が狭いので 線形スケールで素直に。可視化では「同じ地図でも色スケールの選び方で印象が変わる」こと自体が論点です。

この題材を選んだ理由

公的統計(e-Stat)を 複数の調査から API 取得 → ETL で正規化・算出 → 地理空間で可視化という、 データエンジニアリングの一連の流れをそのまま見せられる題材です。 指標は設定を1行足すだけで追加でき(世界地図版=World Bank API への拡張も同設計)、特定企業・製品の機密には一切触れません。

実装メモ

  • 地図変換・投影は topojson-client / d3-geo、色は d3-scale / d3-scale-chromatic。バー・凡例は CSS。時系列チャート(折れ線・棒・散布図)も SVG 直描画。
  • 年スライダー・時系列チャート・ランキングは選択年で連動。色スケールのドメインは全年で固定し、年を変えても「同じ色=同じ値」を保ちます。県をクリックすると最大4県をピン留めして全国平均(破線)と推移を比較できます。
  • Astro の client:visible で遅延ハイドレーション(地図データを含むチャンクを初期表示から外す)。
  • データ取得はビルド前の ETL で完結。appId は環境変数で扱い、生成 JSON にも公開バンドルにも含めません。