matplotlib:インストール
ここでは、macOSで構築する「気象データ解析のためのmatplotlibの使い方」のサンプルプログラム実行環境を、Linux上で構築するための手順を紹介しています。導入にはパッケージ管理ツール Condaを用います。macOSでMacPortsを利用する場合には「2章 matplotlibの導入」をご参照ください。
作成者:山下陽介(国立環境研究所)
準備
パッケージ管理ツールConda
Python環境を構築するため、まずはパッケージ管理ツールCondaを導入します。Anacondaを導入する、軽量版のMinicondaやMiniforgeを導入する、Intel oneAPIのcondaコマンドを利用する、など複数の方法がありますので、お好みのものをご利用ください。なお下記のツールには、Linux版の他、Windows版、macOS版もあります。
*macOS上のMacPortsなど、他のパッケージ管理ツールを利用している場合には、Condaを導入すると競合が発生することがあります。
*条件によっては、有償版のAnacondaが必要となります。
- Linux版Anacondaのインストール
- Anaconda(ダウンロードサイト)
- Miniconda(Python環境に特化した軽量版)
- Miniforge(Miniconda+conda-forge、Anacondaが利用できない場合など)
- Intel oneAPI Base Toolkit + HPC Toolkit (Intel Fortran)のインストール(Linux版)(Intel Fortran/Pythonと共存させたい場合など)
*macOS上のMacPortsなど、他のパッケージ管理ツールを利用している場合には、Condaを導入すると競合が発生することがあります。
*条件によっては、有償版のAnacondaが必要となります。
Conda環境の作成
ここでは、conda実行環境を複数用意して、使いたい環境に切り替える方法を紹介します。Python3.12環境をpy312という名前で作成するには、次のようにします。-nオプションで作成する環境の名前を、pythonオプションでPythonのバージョンを指定しています。Pythonのバージョンを変えたい場合にはpython=3.12の部分を変更し、作成する環境の名前も適切なものに変更します。特にチャンネルを指定しない場合、anacondaが使われます(複数のcondaのうちMiniforgeの場合のみ、conda-forgeがデフォルトとして使われます)。
*minicondaの場合、~/miniconda3/envs/py312/ができる
*miniforgeの場合、~/miniforge3/envs/py312/ができる
*Intel oneAPIの場合、~/.conda/envs/py312/ができる
なお、Miniforgeを使わずにconda-forgeのパッケージを利用したい場合、次のようにチャンネルを追加し、チャンネルを明示して実行環境を作成します。
作成した実行環境を次のように有効化します。
% conda create -n py312 python=3.12*anacondaの場合、~/anaconda3/envs/py312/ができる
*minicondaの場合、~/miniconda3/envs/py312/ができる
*miniforgeの場合、~/miniforge3/envs/py312/ができる
*Intel oneAPIの場合、~/.conda/envs/py312/ができる
なお、Miniforgeを使わずにconda-forgeのパッケージを利用したい場合、次のようにチャンネルを追加し、チャンネルを明示して実行環境を作成します。
% conda config --add channels conda-forge % conda create -n py312 python=3.12 -c conda-forge --override-channelsチャンネルが追加されたか確認したい場合
% conda config --show channels
作成した実行環境を次のように有効化します。
% conda activate py312環境によってはconda activateでエラーが出ることがあるので、その場合には
% source activate py312を試してください(csh/tcshの場合には利用不可なので、bashに切り替える)。
パッケージのインストール
サンプルプログラムで利用するパッケージ
サンプルプログラムでは、Condaで追加導入するパッケージが必要です。インストールを行う際には、
最後にBasemapをインストールします。
なお、basemap_ortho.pyではLinuxのwgrib2コマンドを利用するため、試してみる場合にはインストールが必要になります。CentOS、RHEL、Alma Linux、Rocky LinuxなどRed Hat系ではEPEL(Extra Packages for Enterprise Linux)リポジトリに含まれます(導入方法はOSやバージョンにより異なるので、EPELのリンク先を参照してください)。Ubuntuなどでは、ソースコードからビルドします(Windows10/11のWSL2上のLinuxに構築する場合参照)。
% conda install パッケージ名を用います。サンプルプログラムの実行に必要なパッケージは、以下の手順で導入します(Conda-forgeを利用する場合、Conda-forgeの場合参照)。
% conda install pandas % conda install netcdf4 % conda install cartopy % conda install lxml % conda install scipyさらに、Webブラウザ上でのインタラクティブ環境をJupyter Notebookで実現したい場合、次のように導入しておきます。
% conda install jupyterなお、軽量なipythonで良い場合には、次のように行います(Jupyter Notebookを導入した場合には不要です)。
% conda install ipython
最後にBasemapをインストールします。
% conda install basemapCondaを使ってbasemapを導入できないケースがあります。その場合には、以下の手順でbasemapのみpipでインストールします。既に作成されているConda環境の場合、basemapインストール時に不整合が生じることがあるため、basemap用に新規作成することを推奨します。
% pip install basemap % pip install basemap-data-hires
なお、basemap_ortho.pyではLinuxのwgrib2コマンドを利用するため、試してみる場合にはインストールが必要になります。CentOS、RHEL、Alma Linux、Rocky LinuxなどRed Hat系ではEPEL(Extra Packages for Enterprise Linux)リポジトリに含まれます(導入方法はOSやバージョンにより異なるので、EPELのリンク先を参照してください)。Ubuntuなどでは、ソースコードからビルドします(Windows10/11のWSL2上のLinuxに構築する場合参照)。
Conda-forgeの場合
Conda-forgeの場合には、以下のようにチャンネルを明示します(以下の例はpython3.12の場合)。
作成した実行環境を次のように有効化します。
% conda config --add channels conda-forge % conda create -n py312 python=3.12 -c conda-forge --override-channels*-cオプションでconda-forgeを利用することを明示
作成した実行環境を次のように有効化します。
% conda activate py312サンプルプログラムの実行に必要なパッケージをインストールします。ここでは、「3章 matplotlib の基本」のインタラクティブ環境をJupyter Notebookで利用することを想定しています。
% conda install pandas -c conda-forge --override-channels % conda install netcdf4 -c conda-forge --override-channels % conda install cartopy -c conda-forge --override-channels % conda install jupyter -c conda-forge --override-channels % conda install lxml -c conda-forge --override-channels % conda install scipy -c conda-forge --override-channels % conda install basemap
Windows11のWSL2上のLinuxに構築する場合
Windows 11では、Windows Subsystem for Linux 2(WSL2)を利用して、Windows上にLinux仮想マシンを構築できるようになっています。ここでは、Ubuntu 24.04.1上のconda-forgeでの導入例を示します。まずは、検索機能を使って「Power Shell」を検索し、次のように現在デフォルトとなっているUbuntu 24.04.1を導入します。
met_sample.zipをダウンロードします。
% wsl --install検索機能で「wsl」を検索して起動します。Power Shell上でwslと入力しても起動できます。なお以降の手順は、物理マシンのUbuntu上にサンプルプログラム実行環境を構築する場合にも適用可能です。サンプルプログラムでは、X Window Systemを利用するため、次のように導入します。
% sudo apt install x11-apps次に、conda-forgeをインストールします。
% wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh % bash Miniforge3-Linux-x86_64.sh % ./miniforge3/bin/conda init --allまずは、Condaの環境を作成します。
% conda create -n py312 python=3.12Minicondaの環境は~/miniforge3/envs/py312/に作成されます。Condaを使ってpython環境を整備します。
% conda activate py312 % conda install pandas % conda install netcdf4 % conda install cartopy % conda install jupyter % conda install lxml % conda install scipy % conda install basemap
met_sample.zipをダウンロードします。
% wget https://yyousuke.github.io/matplotlib/met_sample.zipZIPを開くためunzipをインストールしておきます。
% sudo apt install unzip % unzip met_sample.zipbasemap_ortho.pyの実行に必要なwgrib2は次の手順でビルドします。なお、以前のバージョンのv.3.1.1は同様にコンパイル可能ですが、v3.1.2ではコンパイル時にエラーが出ます。
% wget https://www.ftp.cpc.ncep.noaa.gov/wd51we/wgrib2/wgrib2.tgz.v3.1.3 % sudo apt install gcc % sudo apt install gfortran % sudo apt install make % sudo apt install cmake % tar -zxvf wgrib2.tgz.v3.1.3 % export CC=gcc % export FC=gfortran % cd grib2 ; makeビルドしたwgrib2コマンドをホームディレクトリ直下のbin/に配置する場合の例です。
% mkdir ~/bin % cp -p wgrib2/wgrib2 ~/bin常に有効にする場合には、~/.bashrcの最後に追記します。
% export PATH=”~/bin:$PATH”現在ログインしている端末で有効にします。
% . .bashrcこの状態でサンプルプログラムが実行可能になっています。
[top]