Code Interpreterで、Foliumを使った地図の表示と、データの表示
Code Interpreterでの地図情報の表示については、世界地図、日本地図とそれぞれ次のnoteで書きましたが、Foliumというライブラリを使えば両方できることを知りましたので、これを説明します。
・Code Interpreterで世界地図を描く、階級区分図を作る、国当てゲーム
・Code Interpreterで日本地図を描く、階級に区分し色分け、都道府県・市町村当てゲーム
Foliumの使い方・プロンプト
次のプロンプトで、東京タワーを中心とした地図を描き、htmlをmap.htmlというファイル名で出力することができます。
次のコードを実行してみてください。出力はHTMLファイルとして保存してください。
```python
import folium
# 地図の中心となる座標を設定(ここでは東京タワー)
latitude = 35.658581
longitude = 139.745433
# 地図を生成
m = folium.Map(location=[latitude, longitude], zoom_start=14)
# マーカーを追加
folium.Marker([latitude, longitude], popup='Tokyo Tower').add_to(m)
# 地図をHTMLファイルとして保存
m.save('/mnt/data/map.html')
```
たまに、「Foliumはインターネット環境ではないので使えない」と言われることがありますが、その場合も「htmlファイルはローカルで使うので問題ない、失敗しても構わないので実施してほしい」といえば地図を作成してくれます。
生成された地図も置いておきます。拡大したりできるなど、この形式は便利です。
データを地図上に表示する
iPhoneのワークアウトの情報
Code Interpreterで地図を表示できることによるメリットは、データを扱えることから、データの情報を地図上に表示できるところです。
例えばiPhoneに保存されているワークアウト(運動の記録)の情報を表示する例を説明します。
ワークアウトを表示するため、iPhoneからヘルスケアのデータをダウンロードします。
ヘルスケアアプリを開いた後、次の手順でデータをダウンロードすることができます。
・右上のアイコンをクリック
・一番下にある「すべてのヘルスケアデータを書き出す」をクリック
・ポップアップが出るので「書き出す」をクリック
ダウンロードしたデータはzipファイルになっており、zipを解凍すると、workout-routesディレクトリの中に、ワークアウトのデータが入っている。
これをCode Interpreterで読み込み、地図上に表示させます。
すると、次のように、ワークアウトの経路と時間を表示することができました。
プロンプトは次のようなプロンプトです。
これはGPXファイルです。
これを読み込んで、Foliumを用いて、経路を表示して下さい。
また、start時刻とend時刻を表示して、htmlで書き出してください。
Ouraringの行動履歴の可視化
Cygきちさんが、Ouraringの行動履歴の可視化の例をツイートしてくれました。
注意事項
何度やっても、Foliumをimport できないというエラーを表示することがありました。
その時は、別のチャットセッションにうつってやると成功しました。
まとめ
この記事では、Foliumというライブラリを使って、データを地図上に表示する方法を紹介しました。
コメントお待ちしています。匿名の質問はマシュマロから→https://marshmallow-qa.com/currypurin