Pythonで地図上に緯度・経度を指定してプロットする
FIoliumというライブラリを使用することで経度・緯度を指定して地図上にプロットすることができます。
ライブラリインポート方法
1 |
pip install folium |
緯度・経度を指定してプロットする方法 その1(単数)
緯度、経度を指定した単純なプロットを行っていきます。例として東京スカイツリーの場所をプロットします。
1 2 3 4 5 6 7 8 9 10 11 |
import folium latitude = 35.710063 longtude = 139.8107 name = "東京スカイツリー" map = folium.Map(location=[latitude, longtude], zoom_start=18) folium.Marker(location=[latitude, longtude], popup=name).add_to(map) map.save("map_skytree.html") |
folium.Mapで緯度、経度、地図のサイズを指定します。地図のサイズはデフォルトが10となっておりズームを大きくしたり、小さくしたりすることで地図の大きさを変更することができます。
folium.Markerでプロットすることが可能です。プロットはクリックすることでpopupに記載された内容がポップアップします。
また、htmlとして保存することが可能です。
緯度・経度を指定してプロットする方法 その2(複数)
緯度、経度を複数指定したプロットを行っていきます。
山の手線の一部をプロットしています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import folium import pandas as pd cities = pd.DataFrame({ 'train': ['駒込','日暮里', '池袋', '鶯谷'], 'latitude': [35.736489,35.727772, 35.728926, 35.720495], 'longtude': [139.746875,139.770987, 139.71038, 139.778837], }) map = folium.Map(location=[35.736489,139.746875], zoom_start=14) for i, r in cities.iterrows(): folium.Marker(location=[r['latitude'], r['longtude']], popup=r['train']).add_to(map) map.save("map_train.html") |
pythonを使用することで、このように簡単に地図上に緯度・経度を指定してプロットすることができるようになります。