LoginSignup
2
4

More than 1 year has passed since last update.

Intel Macでmatplotlib+cartopyの環境構築

Last updated at Posted at 2020-11-15

はじめに

気象データを Python を使って地図とともに可視化するためには、matplotlib と cartopy を使うことが一般的です。そのための環境を Anaconda (Miniconda) で構築する手順について述べます。手元のOSのバージョンは macOS Catalina 10.15.7 (Intel)です。

M1 Macでの環境構築については、「M1 Macでmatplotlib+cartopyの環境構築」をご覧下さい。

Anaconda (Miniconda) のインストール

Anaconda はパッケージ管理や仮想環境の作成ができるPythonのディストリビューションです。pyenv と pip を使って同等のことが出来ますが、依存するプログラムを同時にインストールできて便利なのでこちらを使う事にします。

Miniconda は Anaconda の最小構成版です。初期にインストールされるパッケージが少なく、ディスク容量をとらないメリットがあるのでこれを導入することにします。

# インストーラーのダウンロード
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh

# 対話形式でインストール
bash Miniconda3-latest-MacOSX-x86_64.sh

使い方は適宜他の記事を参照してもらえばよいですが、condaコマンドを使って仮想環境ごとにパッケージ管理を行うことができます。プロンプトに(base) $などと表示されている場合、baseというanacondaの仮想環境にいることを意味します。base環境でパッケージを導入してもよいですが、ここでは新たにcartopy-envという環境を作成してみることにします。

conda create -n cartopy-env python=3.9

仮想環境をconda createで作成しただけではpythonが含まれないので、Pythonをバージョン指定してインストールするようにします。ここでは執筆時の最新版のバージョン3.9を指定しました。

仮想環境を切り替えるにはconda activateを叩きます。

conda activate cartopy-env

プロンプトに(cartopy-env) $のように表示されればOKです。

パッケージのインストール

次に必要なPythonのパッケージをインストールしていきます。例えば科学技術計算を行うためのnumpyをインストールするには次のコマンドを使います。

conda install -c conda-forge <パッケージ名>

condaでは同じパッケージが複数のリポジトリから提供されるため、どのリポジトリからインストールするかを-cオプションで指定しています(ここではconda-forge)。どのようなパッケージがあるかは https://anaconda.org/ で検索することができます。基本的にはconda-forgeリポジトリを選べばよいです。

それでは他に必要なものをインストールしていきます。パッケージ名はスペース区切りで複数指定できます。

conda install -c conda-forge numpy scipy xarray netcdf4 matplotlib cartopy

インストールされたパッケージのバージョンはconda listで確認できます。手元の環境でインストールされた主要なパッケージのバージョンとざっくりとした説明を書いておきます。

  • numpy (1.20.1):科学技術計算用のライブラリ
  • scipy (1.6.0):科学技術計算用のライブラリで、numpyにない機能も含んでいる
  • xarray (0.16.2):netCDF形式などのファイルの読み書きを行うのに必要
  • netcdf4 (1.5.5.1):netCDF形式などのファイルの読み書きに使っていたが、今はxarrayを推奨。ncdumpコマンドが同時にインストールされる。
  • matplotlib (3.3.2):図の描画に必要
  • cartopy (0.18.0)matplotlibで地図を描画するのに必要

説明は以上です。

2
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4