はじめに
クジラ飛行机、 杉山 陽一、遠藤 俊輔 著「PythonでつくるWebアプリのつくり方」を読み,Pythonを使ったWebアプリ開発の基礎を学ぶことにした。
本記事は,「chapter4 実践Webアプリを作ってみよう」における,地図データを活用したアプリに関する読書メモである。
04 地図上に気象データを表示しよう
要点
地図表示用のライブラリ
本節では,地図表示用のアプリを紹介している。Pythonで地図データアプリを扱うためのアプリには,以下のようなものが存在する。
- japanmap : GitHub - SaitoTsutomu/japanmap
- geopandas : GeoPandas 1.0.1 — GeoPandas 1.0.1+0.g747d66e.dirty documentation
- Folium : Folium — Folium 0.19.6 documentation
japanmapを使って日本地図を可視化した結果は以下のようになる。

geopandas
geopandasも日本地図を扱うためのライブラリである。これを使う際には,事前に国土交通省の国土数値情報ダウンロードサイト(国土数値情報 | 行政区域データ)から,必要なデータをダウンロードする。

Folium
Foliumを使うと,Pythonからオンライン地図サービスのOpenStreetMap(OpenStreetMap)を使うことができる。また,任意の緯度・経度に複数のマーカーを配置することができる。
Foliumでは,地図情報をHTMLファイルに保存する関数があるので,このHTMLファイルを用いることでWebアプリ上で地図を手軽に描画できる。

本節の気付き : 国土交通省の行政区域データ
国土交通省の国土数値情報ダウンロードサイト(国土数値情報 | 行政区域データ)から,N03-20240101_GML.zipをダウンロードし,zipファイルを解凍すると,.geojsonファイルや.xmlファイルなどが得られる。

本節では,「N03-20240101.geojson」ファイルを扱うが,このファイルの内容を確認すると,json形式で地形情報が記録されていることが確認できた。

なお描画用のスクリプトを実行すると,GeoJSONのデータサイズが大きいので,描画されるまで時間がかかった。

本節の気付き : 地図上に最高気温を表示する
気象情報API
気象情報を提供するAPIは,クジラWeb APIで公開されていた。こちらでは,気象情報以外にも,郵便番号やIPアドレスを取得するAPIが存在していた。
まとめと感想
今回は,「chapter4 実践Webアプリを作ってみよう」における,地図データを活用したアプリについてまとめた。
地図情報を扱うためのライブラリやAPIは複数存在するので,用途に応じて上手く使い分けていきたい。
本記事を最後まで読んでくださり,どうもありがとうございました。