はじめに
前回の記事で、foliumを用いた地理データを地図上に可視化の基本操作を示しました。以下の記事です。
しかしながら、マーカーの数が多くなると非常に見ずらい地図になるという問題がありました。
そこで、本記事ではMarkerClusterによるマーカーをまとめて表示することで、地理データを地図上に見やすく可視化する方法を簡単に紹介したいと思います。
- はじめに
- 1. foliumとは
- 2. 地図に任意の地点にマーカーをプロットする方法
- 3. 複数の地点をfoliumで地図にマーカープロット
- 4. MarkerClusterを用いてマーカーをまとめて表示
- 5. 実例
- 参考資料
- オススメ書籍
- スキル修得&転職
1. foliumとは
foliumの公式ドキュメントは以下です。
python-visualization.github.io
2. 地図に任意の地点にマーカーをプロットする方法
地図に任意の地点にマーカーをプロットする方法については前回の記事をご覧ください。
3. 複数の地点をfoliumで地図にマーカープロット
マーカーの数が多くなると非常に見ずらい地図になるという問題があるといいましたが、ここでその状態を確認したいと思います。
今回使用する複数の地点のデータは東京都内に存在するすき家の店舗です。以下のすき家のホームページ(店舗情報 | すき家)から取得した各店舗の住所データをもとにマーカーをプロットしたいと思います。今回は東京都を基準とした地図を生成し、その後、csvファイルに記載されているすき家各店舗の住所から店舗の緯度経度を取得してマーカーをプロットしています。
上の地図のようにマーカーが多くで見ずらい印象を受けますよね。この地図データを見やすく改善したいと思います。
4. MarkerClusterを用いてマーカーをまとめて表示
それでは、MarkerClusterを用いてマーカーをまとめて表示したいと思います。マーカークラスター「marker_cluster = MarkerCluster().add_to(map)」を生成し、folium.Marker().add_to()でmapではなくmarker_clusterを指定してあげることで実現できます。
下の地図を 拡大してあげることで各店舗のマーカーが出現し、縮小することで複数店舗のマーカーがまとめて表示されるようになります。
5. 実例
各都道府県のすき家店舗のマップを作成してみました。すき家のホームページから各店舗の店舗名、住所等を取得して、そのデータを基にfoliumを用いて地図データを作成しました。以下のリンクをご覧ください。
参考資料
オススメ書籍
Pythonによるあたらしいデータ分析の教科書
Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。
データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析
こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。
東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~
こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。
スキル修得&転職
近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。
以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲