🧨

Streamlit で G空間情報センターのオープンデータを可視化する

2024/12/31に公開

今年は Streamlit で遊ぶ機会に恵まれたので業務でポチポチ触っていました。
それはそれとして、何か記事を……と、人流データを可視化するアプリを作りました。


Streamlit について

Python だけで Web アプリケーションを作れます。HTML や CSS を書きたくない人にはうってつけのフレームワークです。

Streamlit

G 空間情報センターについて

様々な組織が有償・無償で公開されているデータセットを探して利用できます。

G 空間情報センターは、様々な主体が様々な目的で整備している地理空間情報(= G 空間情報)の有効活用と流通促進を図り、社会課題を解決するアクターの後方支援を行うためのデータ流通支援プラットフォームです。

G 空間情報センター

利用するデータセットについて

全国の人流オープンデータ(1km メッシュ、市区町村単位発地別)
2019 年 1 月~ 2021 年 12 月の各月データのうち、2020 年~ 2021 年のデータを使って可視化します。

2019 年のデータは一部の市区町村コードが違って面倒そうなので使っていません。

※福岡県那珂川市の市区町村コード(40231)は、2019 年データにおいては旧那珂川町のコード(40305)となっている

オープンデータ(人流データ)定義書 より

データセットには活用例などもあります。ユーザー登録後にダウンロードできます。興味がありましたらぜひどうぞ。


成果物

image

https://mlit-1km-fromto-visualize.streamlit.app/

Streamlit Community Cloud を利用しました。


比較

Tableau: 1km メッシュ別の滞在人口データの可視化イメージ

Tableau
イメージ

自分で作ったマップとの比較

Streamlit
だいたい一緒

滞在人口が空のエリアの処理方法がちょっと違います。
ダッシュボード上は滞在人口が空のエリアも塗りつぶして増減率を出していますが、アプリでは単にドロップしています。

2021
2020


おわりに

マップのみで分析は行っていないのですが、マップを表示するイメージはなんとなくつかめたような気がします。どうでしょう。

ぜひ、アプリを触ってもらえると嬉しいです。

デプロイ先のスペックが貧弱なのでエリアが大きくなるとかなり重いです。
GitHub Codespace(2-core) では余裕で動くことを付け足します。

脚注
  1. クリエイティブ・コモンズ・ライセンス 表示 4.0 国際 ↩︎

Discussion