【folium】地図のマーカーpopupに別タブで開くリンクを貼る方法
今回は、foliumで作成した地図にマーカーを追加し、そのpopupに別タブで開くリンクを貼る方法。
popupにbranca.element.IFrame()
を使ってhtmlコードが書けますが、リンクを貼るだけだとpopupの中にリンクページが表示されます。小さくて見にくい。
そこで、リンクをブラウザの別タブで開くようにしてhtmlコードを書いておけば…
参考リンク
- 別タブで開くリンクの書き方は
<a href="リンク先URL" target="_blank" rel="noopener noreferrer">リンクはこちら</a>
実行環境
- Android
- Termux
- Python3.9
- Jupyter Notebook
- folium、 branca
- ライブラリのインストールは
$ pip install folium branca
など。環境に合わせて行っておく。
地図作成
# popupに別タブで開くリンクを貼った地図を作成 import folium from folium import plugins import branca # ベースの地図作成 center = ['36.534461', '138.137568'] # 中心座標(適当 m = folium.Map(center, zoom_start=8) # ポップアップの作成 (別タグで開くリンクつき html = '<a href ="https://www.city.chikuma.lg.jp/docs/2013080700188/" target="_blank" rel="noopener noreferrer">長野県千曲市 森将軍塚古墳 <br> 科野の里歴史公園 森将軍塚古墳館 (別タブで開きます) </a>' # popupの作成 (画像の貼り付け iframe = branca.element.IFrame(html=html, width=300, height=100) popup = folium.Popup(iframe, max_width=300) # 地図にpopupを追加 folium.Marker(center, popup=popup).add_to(m) # 地図をフルスクリーンにするボタンの追加 plugins.Fullscreen( position="topright", title="拡大する", title_cancel="元に戻す", force_separate_button=True, ).add_to(m) # 地図を表示 m
Make this Notebook Trusted to load map: File -> Trust Notebook
座標とリンクは長野県千曲市の有名な古墳。
上の地図のマーカー(ピン)をクリックすると、ブラウザの別タブで開くリンクが貼り付けてある。
これは需要があるだろう。以上です。