先人に感謝
キーワード: OpenStreetMap, Python, leaflet.js, folium, タイル地図, マーカー
システム Python を使うことができる(その場合,Python のインストールは行わない)
システム Python を用いるときは,pip, setuptools の更新は次のコマンドで行う.
sudo apt -y update sudo apt -y install python3-pip python3-setuptools
Ubuntu で,システム Python 以外の Python をインストールしたい場合は pyenv が便利である: 別ページで説明している.
Python の URL: http://www.python.org/
【Python, pip の使い方】
Python, pip は,次のコマンドで起動できる.
【Python 開発環境のインストール】
JupyterLab, spyder, nteract (Python 開発環境) のインストールは, Windows でコマンドプロンプトを管理者として実行し, 次のコマンドを実行.
python -m pip install -U pip setuptools jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder
詳しくは,: 別ページで説明している.
JupyterLab, spyder, nteract (Python 開発環境) のインストール: : 別ページで説明している.
Windows での マイクロソフト C++ ビルドツール (Build Tools) のインストール手順: 別ページで説明している.
コマンドプロンプトで、次のコマンドを実行.
python -m pip install -U pandas folium
端末で,次のコマンドを実行.
python -m pip install U pandas folium
バージョン番号が表示されれば OK
pip show folium
※ GitHub からソースコードをダウンロードしてインストールしたい場合
起動は,Windows のメニューで「Visual Studio 20..」の下の「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」を選ぶ.「x64」は,64ビット版の意味である.
Visual Studio Community のインストールを行うことで, 「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」もインストールされる.その手順は,別ページで説明している.
python -m pip install -U pip pip install git+https://github.com/python-visualization/folium
エラーメッセージが出ていないことを確認
バージョン番号が表示されれば OK
pip show folium
あとで緯度経度を設定するときのために,Google Map を使って緯度・経度を調べてみる
jupyter qtconsole
Python プログラムを動かす
開発環境や Python コンソール(Jupyter Qt Console,Spyder,PyCharm,PyScripter など)の利用も便利である.
※ 「jupyter qtconsole」を入れたのに,jupyter qtconsole が起動しない という場合には,次の操作で,インストールを行ってから,もう一度試してみる.
python -m pip install -U jupyterlab jupyter jupyter-console jupytext spyder
import os print(os.getcwd())
※ あとで,ファイルを作成する.ファイルはカレントディレクトリに作成される. (カレントディレクトリが分からないと,あとで,ファイルがどこにあるか分からなくなる).
Python の foliumパッケージを使い,プログラムを,簡単なコマンドで作成できる.
OpenStreetMap を使い,緯度経度が34.4461, 133.2315 のところを含むタイル地図で,レイヤ番号12のものを表示したい.そんな表示を行うHTML + JavaScript (leaflet.js を使用) のファイル a.html が生成される.
import folium
m = folium.Map(location=[34.4461, 133.2315], zoom_start=12)
m.save("a.html")
マウスで拡大縮小、移動できるので確認しておく
folium パッケージが扱える地図の種類(データソースの種類)は次の通り。
など
先ほどは,「OpenStreetMapのタイル地図をダウンロードして表示する leaflet.js プログラム」の作成だった. 他の地図も試してみる.
import folium
m = folium.Map(location=[34.4461, 133.2315], zoom_start=12, tiles='Stamen Terrain')
m.save("a2.html")
import folium
m = folium.Map(location=[34.4461, 133.2315], zoom_start=12, tiles='Stamen Toner')
m.save("a3.html")
手順
https://media.readthedocs.org/pdf/folium/latest/folium.pdf に記載のサンプルプログラム(下に引用)を,spyder のコンソールで動かしてみる
map_1 = folium.Map(location=[45.372, -121.6972], zoom_start=12, tiles='Stamen Terrain') folium.Marker([45.3288, -121.6625], popup='Mt. Hood Meadows').add_to(map_1) folium.Marker([45.3311, -121.7113], popup='Timberline Lodge').add_to(map_1) map_1
map_1.save("b.html")