クマ・イノシシ・シカ・カモシカの出没情報をインタラクティブな地図で確認できるダッシュボードを2種類の技術スタックで開発しました。本記事ではそれぞれの特徴・メリット・デメリットを比較しながら、データの出典とともに紹介します。
■ データについて
データ出典:秋田県 野生動物出没情報システム(くまダス)
秋田県が公開している野生動物の出没情報データベースです。ツキノワグマ・イノシシ・ニホンジカ・カモシカの目撃情報、痕跡情報、人身被害情報が含まれており、日時・場所・状況などが記録されています。
データ規模:約21,000件(2022年〜2026年)
主な項目:獣種、情報種別(目撃/人身被害/痕跡など)、市町村、緯度経度、頭数、目撃状況テキスト
データURL:https://ckan.pref.akita.lg.jp/dataset/050008_shizenhogoka_003
■ 2種類のダッシュボード
① Streamlit版(Pythonクラウドアプリ)
URL:https://kumadas-dashboard.streamlit.app
PythonのWebアプリフレームワーク「Streamlit」を使って構築したダッシュボードです。GitHubリポジトリと連携し、Streamlit Community Cloud(無料)でホスティングしています。

② HTML+JavaScript版(静的Webページ)
URL:https://gkukan.net/htdocs/kumadas-dashboard.html
サーバー不要のHTML1ファイルで動作する軽量ダッシュボードです。Leaflet.js(地図)とChart.js(グラフ)を使用し、データはHTML内に直接埋め込んでいます。

■ 機能比較
| 機能 | Streamlit版 | HTML版 |
| 地図表示 | ○ Plotly(インタラクティブ) | ○ Leaflet.js(OpenStreetMap) |
| クラスタリング | × | ○ 自動グループ化 |
| フィルタ | ○ 年度・獣種・種別・市町村・テキスト | ○ 年度・獣種・種別・市町村・テキスト |
| グラフ | ○ 月別折れ線・棒グラフ複数 | ○ 月別棒グラフ |
| データ一覧 | ○ 行クリック→マップ拡大 | ○ 行クリック→マップ拡大 |
| 凡例 | ○ 情報種別で色・形分け | ○ 情報種別で色・形分け |
| KPI表示 | ○ | ○ |
| サーバー設置 | 不要(クラウド) | 不要(HTML1ファイル) |
■ Streamlit版の詳細
Streamlitは、Pythonのコードだけでインタラクティブなデータアプリを作れるフレームワークです。データ分析に強いPandasやPlotlyをそのまま利用できるため、グラフの種類が豊富で高機能なダッシュボードを比較的少ないコードで実現できます。
メリット
- Pythonで書けるためデータ処理・分析との親和性が高い
- Plotlyによる高品質なインタラクティブグラフ
- GitHubと連携するだけでStreamlit Community Cloudに無料デプロイ可能
- データ更新はGitHubにCSVを上書きするだけで自動反映
- サイドバーフィルタなどUIコンポーネントが豊富
デメリット
- 初回起動に10〜20秒ほどかかる(スリープ状態からの復帰)
- GitHub・Streamlitアカウント作成など導入手順がやや複雑
- 無料プランはリソース制限あり(同時アクセス数など)
- 表示速度はJavaScript版より遅い傾向
- Pythonの知識が必要
■ HTML+JavaScript版の詳細
Leaflet.jsとChart.jsを組み合わせたHTML単体のダッシュボードです。Pythonもサーバーも不要で、HTMLファイル1つをサーバーにアップするだけで公開できます。MarkerClusterプラグインにより2万件のデータでもスムーズに地図表示できます。
メリット
- HTML1ファイルだけで完結・FTPでアップするだけ
- サーバー設定不要・追加費用ゼロ
- MarkerClusterにより大量マーカーを高速表示
- 既存のWordPressサイトにiframeで埋め込み可能
- JavaScriptの知識があれば自由にカスタマイズ可能
デメリット
- データをHTMLに埋め込んでいるためファイルサイズが大きい(約3MB)
- グラフの種類がStreamlit版より少ない
- データ更新のたびにHTMLを再生成してアップし直す必要がある
- Python的なデータ処理(pandas等)は別途必要
■ どちらを選ぶか
| ケース | おすすめ |
| とにかく簡単にサーバーに置きたい | HTML版 |
| データ更新を自動化・GitHub管理したい | Streamlit版 |
| WordPressに埋め込みたい | どちらもiframeで可 |
| グラフ・分析を充実させたい | Streamlit版 |
| 表示速度を重視する | HTML版 |
| Pythonが使える | Streamlit版 |
| プログラム知識がほぼない | HTML版(FTPのみ) |
■ まとめ
今回は秋田県の野生動物出没データを題材に、StreamlitとHTML+JavaScriptという2つのアプローチでダッシュボードを作成しました。どちらも無料で公開でき、インタラクティブな地図・グラフ・データ一覧を備えています。
Streamlit版はPythonの強みを活かした高機能な構成、HTML版はシンプルで高速な構成です。目的や環境に合わせて使い分けるのがベストです。本記事が野生動物の出没状況の把握や、オープンデータ活用の参考になれば幸いです。
#GIS #オープンデータ #データ可視化 #秋田県 #野生動物 #Streamlit #Leaflet #Python #ダッシュボード #地図可視化


コメント