はじめに
以前の記事で mac に 地理空間データの扱いを容易にする Cartopy をインストールする方法を紹介しました。
今回はWindowsにCartopyをインストールする方法を紹介します。
Windows10 64bit, conda23.3.1
CartopyのWindowsへのインストール
以前の記事で紹介したように,Cartopyをインストールするには,GEOS,Shapley,pyshp などの外部パッケージをインストールする必要があります。
LinuxやMacでは,簡単に使えるパッケージ管理ソフトウェアがいくつか (apt-getやHomebrew, MacPorts等) ありますが,Windowsの場合にはそうもいきません。 (したがって,複雑な依存関係を考慮して,ソースコードからビルドすることも考えられますが,現実的ではないと思います。私は挫折しました。)
Cartopyのページには conda を利用してインストールする方法が紹介されています。conda は Anaconda 等の Pythonのディストリビューションに付属しているパッケージ管理ソフトウェアで,Anaconda等をインストールすると付属してきます。
この記事では,conda (パッケージ管理システム) と必要最小限のパッケージのみが用意されているディストリビューションである minicondaを使用して Windows 上でCartopy 動かす方法を紹介します。
※ Anaconda ではなく Miniconda を使用する理由
Anacondaには科学計算に便利な多くのツールやパッケージが同梱されています。しかしながら,容量が大きく,ほとんどの機能は手に余ってしまいます。インストールの時間もかかり,何をインストールしたか分からなくなってしまいます。そのため,最小限のminicondaをインストールします。ただし,Anacondaをインストールしても基本的には動くはずです。
また,大規模な商用利用で,Anacondaのレポジトリ (パッケージを取ってくるところ) を利用する場合,有償版が必要になります (非商用利用や研究利用に対しては無償でできます。詳しくは利用規約を御覧ください)。
したがって,多くの先人達 (参考サイト参照) が述べているように,miniconda + conda-forge という構成で Cartopy が動作する環境を作ります。
1. Minicondaをインストールする
Minicondaの公式サイトからインストーラをダウンロードします。
左のリストにある「Latest Miniconda Installer Links」をクリックします。
クリックすると上のようなページが現れます。
私のPCは64ビットのWindowsなので,Latest Miniconda Installer Linksの「Miniconda3 Windows 64-bit」を選択しました。ご自身のPCが64ビットか32ビットかわからない場合は,設定から確認することができます (Windowsサポートの回答)。
ダウンロードが完了すると,ダウンロードフォルダ内にダウンロードされたファイルがありますので,それをクリックして,インストーラを起動します。
インストーラに従って,インストールを進めていきます。「Next」をクリックしてください。
ライセンスの条項を読んで,同意する (「I Agree」をクリック) とインストールできます。
今ログインしているユーザ (「Just Me」) に対してのみインストールするか,すべてのユーザ (「All Users」) に対してインストールするかを選択します。特別な理由がない限り,今ログインしているユーザのみ (「Just Me」) で良いです。「Next」をクリックします。
minicondaのインストール場所を選択します。通常は C:\Users\<ユーザ名> の下に miniconda3 というフォルダが作られて,そこにインストールされます。これも,特別な理由がなければそのままで良いでしょう。「Next」をクリックします。
インストールのオプションを選択します。上から順に
- スタートメニューにショートカットを作るか
- 環境変数 PATH にMiniconda3 を追加するか (非推奨)
- default python3.10として Miniconda3を登録するか (推奨)
- 完了時にパッケージキャッシュをクリアするか (推奨)
です。推奨されているものにチェックを入れて,「Install」をクリックします。
ただし,すでに他の方法 (例えば,Pythonの公式サイトからインストーラをダウンロードする方法) でPythonをインストールしている方は,3番めのチェックボックスにチェックを入れると,
のような警告が出る場合があります。意訳すると,
システムの Python (minicondaインストール前にコマンドプロンプトやPowerShellで 「python」として使っていたもの) がすでにあるので,本当にdefault Python 3.10 として登録したいなら,まず,登録を解除してから進むことをおすすめします
ということです。この場合,チェックをつけずにそのまま進むことをおすすめします (これまで使用していたものが動かなくなってしまう可能性があるため)。
インストールが完了すると,次のような画面が現れます。「Finish」で終了してください。チェックボックスにチェックを入れたままだと,Anacondaのページが立ち上がりますが問題ありません。
2. チャンネルを デフォルトから conda-forge に変更する
Anaconda PowerShell Prompt (miniconda3)を起動します。スタートメニューにAnaconda PowerShell Prompt と打ち込むと出てくるはずです。Anaconda PowerShell Prompt (miniconda3)を立ち上げると,先程インストールしたPythonが使用できます。
また,気象データ解析の記事で出てくる cd
や ls
コマンドは使用できるはずです。
気象データ解析に必要なパッケージはレポジトリに登録されています。レポジトリは初期状態ではAnaconda社の defaults
というチャネルです。一方,conda-forge
というコミュニティで運営されているレポジトリチャンネルがあります。このレポジトリチャンネルから必要なパッケージを取得するように設定しておきます。
まず,
> conda config —-show channels
とします (>
はプロンプトです。conda 以下から入力してください。) 。こうすると,現在のレポジトリチャネルの設定を見ることができます。- defaults
はデフォルトつまり,anaconda社のレポジトリからパッケージを取得することを意味します。
次に,
> conda config -—remove channels defaults
とし,defaults
チャンネルを削除し,
> conda config -—add channels conda-forge
で conda-forge
チャンネルを追加します。
もう一度,conda config —-show channels
とすると,conda-forge
チャンネルが追加されていることがわかります。
実際に順番に行うと,次のような画面になるはずです。
2-1 仮想環境を作って仮想環境に入る
この工程は必ずしも必要ありませんが,仮想環境を簡単に作成できることが miniconda (Anaconda) の魅力ですから,仮想環境を作っておきます。仮想環境の利点は仮想環境ごとにバージョンの切り分けや,パッケージのインストールができることです。
Anaconda PowerShell Prompt (miniconda3) を起動して,
> conda create -n myenv python
としてください (>
はプロンプトです。conda 以下から入力してください。) 。こうすると myenv
という名前の仮想環境ができます。
次に,
> conda activate myenv
とすると,仮想環境内に入ることができます。仮想環境に入ると,プロンプトの一番左が (base)
から (myenv)
に変わるので,どの仮想環境にいるかがわかります。
- 仮想環境から抜けたい場合は
conda deactivate
とすると,base
に戻ることができます。 - 仮想環境の一覧は
conda info -e
で見ることができます。 - また,Anaconda PowerShell Prompt (miniconda3) 起動時には
base
にいます。再起動した際には,conda activate <*仮想環境名*>
で入り直してください。
3. Cartopyをインストールする
> conda install cartopy
でインストールすることができます。仮想環境を作った方は,インストールしたい仮想環境に入って (conda activate myenv
として) から上記のコマンドを実行してください。
途中でインストールするパッケージの確認があり, Proceed ([y]/n) ?
(続けますか?) と聞かれるので,y
と答えます。色々なパッケージをインストールするため,やや時間がかかります。
なお,どのようなパッケージがインストールされたかを見るには,conda list
とすれば一覧が表示されます。
4. Cartopyを使ってみる
以前の記事で紹介した日本地図を描くスクリプトを動かしてみましょう。
プログラムをコピーして,適当な名前をつけて,好きなフォルダに保存します。ここでは,便宜上 Desktop\LabCode\weather
フォルダに map-japan.py
という名前で保存します。
Anaconda PowerShell Prompt (miniconda3) を起動して,
> cd Desktop\LabCode\weather
でフォルダに移動します。
> python map-japan.py
とすると,プロットされるはずです!
最後に
今回は,miniconda + conda-forge でWindowsにcartopyをインストールする方法を紹介しました。気象データ解析の記事ではmacを前提に書かれていますが,WindowsでもAnaconda PowerShell Prompt (miniconda3) を使用して同様にプログラムを動かすことが可能です。ぜひ試してみてください!
参考
この記事を執筆するに当たり,以下のウェブサイトを参考にしました。有益な情報の提供と公開に感謝します。
- Cartopyのインストール方法を紹介した公式ページ:https://scitools.org.uk/cartopy/docs/latest/installing.html
- @tfukumoriさんQiita記事「Anaconda パッケージリポジトリが「大規模な」商用利用では有償になっていた**」**:https://qiita.com/tfukumori/items/f8fc2c53077b234384fc
- @kimisyoさんQiita記事「Anacondaの有償化に伴いminiconda+conda-forgeでの運用を考えてみた」:https://qiita.com/kimisyo/items/986802ea52974b92df27
- anacondaの利用規約:https://legal.anaconda.com/policies/en/#terms-of-service