【Python】世界地図を表示する方法を紹介!(cartopy)

  • 2020年10月5日
  • 2020年10月5日
  • Python

こんにちは!

皆さんは、Pythonで世界地図を表示したいと思ったことはありませんか?

Python初心者
世界地図が表示できたら色々な国別のデータの可視化に使えそうだね!

Pythonでの世界地図の可視化は、「cartopyライブラリ」を使うと簡単に可視化することができますよ。

今回の記事では、以下の内容について紹介します。

  • cartopyについて
  • 世界地図を表示する方法

cartopy

cartopyとは

イギリス気象局によって開発されている、地図描画用のPythonライブラリです。

cartopyのインストール方法

pipを使用する方はこちら

pip install cartopy

anacondaを使用する方はこちら

conda install -c conda-forge cartopy

世界地図を表示してみよう!

では早速世界地図を表示してみましょう!

地図の表示手法には様々あり、cartopyにも複数の手法が用意されているため、その中の以下の方法を紹介します。

  • 正距円筒図法
  • メルカトル図法
  • 正距方位図法
  • 正射図法

世界地図は、世界の海岸線に線を引くという操作によって描きます。

また、Matplotlibを一緒に用い、Matplotlibと同じような感覚で扱えます。

正距円筒図法

import matplotlib.pyplot as plt
import cartopy.crs as ccrs

ax = plt.axes(projection=ccrs.PlateCarree())
ax.coastlines()

plt.show()

実行結果

メルカトル図法

import matplotlib.pyplot as plt
import cartopy.crs as ccrs

ax = plt.axes(projection=ccrs.Mercator())
ax.coastlines()

plt.show()

実行結果

Python初心者
メルカトル図法は、正距円筒図法の図を縦方向にも伸ばしたものらしいよ!

正距方位図法

import matplotlib.pyplot as plt
import cartopy.crs as ccrs

ax = plt.axes(projection=ccrs.AzimuthalEquidistant())
ax.coastlines()

plt.show()

実行結果

先パイ
正距方位図法は中心からの距離方位が正しく、地球全体が円で表される投影法じゃな

正射図法

import matplotlib.pyplot as plt
import cartopy.crs as ccrs

ax = plt.axes(projection=ccrs.Orthographic())
ax.coastlines()

plt.show()

実行結果

先パイ
正射図法は地球表面を平面に対して正射影する投影法じゃよ

まとめ

今回の記事では、以下の内容について紹介しました。

  • cartopyについて
    →地図描写用のライブラリ
  • 世界地図を表示する方法
    →Matplotの操作と同じように地図を表示できる。
Python初心者
こんなに簡単に色々な世界地図が描けるんだ!

世界地図を描けるようになって、様々なところに役立てましょう!