(前言2)安裝 NCL 套件 for python
從NCL的官網中發現,NCL未來將不更新,會將其技術轉移到python,大略看了一下內容,其實只是在Python安裝了NCL的套件
因此為了實現能在python架構下,使用NCL既有的工具 ( ie 讀nc檔...等),必須安裝一些套件,即 PyNIO(讀nc檔) & PyNGL(繪圖引擎)
實際參考官網 https://www.pyngl.ucar.edu/Download/
照著上面操作,其實主要是利用 conda 來進行安裝
照著官網指令,適合python3.X版以上
安裝指令:
conda create --name pyn_env --channel conda-forge pynio pyngl source
會安裝一陣子,安裝完成後...
套件啟動指令: activate pyn_env
接著直接在終端器輸入python,進行測試:
>>> import Nio
>>> import Ngl
>>> print Nio.__version__
>>> print Ngl.__version__
基本上會失敗XDDDD
上網查了許多文獻後,或許是編譯器的問題,也可以當作版本問題,其中一篇文章提到:
"The conda-forge project migrated to new compilers recently, and PyNIO/PyNGL are holdover packages that have not been built with the new compiler yet (the issue is actually with `hdfeos2` and `hdfeos5`, which are dependencies of PyNIO)"
ok,那我們試著另外一種方式
1. vi .bashrc (換一個方式執行conda)
#export PATH=/path/anaconda3/bin:$PATH #不使用這個
. /path/anaconda3/etc/profile.d/conda.sh #使用這個
source .bashrc
2. 安裝套件
若之前有安裝了,先刪掉
並輸入指令
conda create --name pyn_env --channel conda-forge/label/cf201901 pynio pyngl
此處說明一下,cf201901 標籤提供了一個通道,能符合python編譯器讀取
看一下安裝內容,若一開始有說conda可以更新,必須更新到最新版,之後再執行上述指令,而實際安裝仍然要執行一陣子...
3.進行測試
安裝完畢後,輸入:
source activate pyn_env
並開啟python,同樣鍵入:
>>> import Nio
>>> import Ngl
>>> print (Nio.__version__) #python3.X 必須要有括號
>>> print (Ngl.__version__)
-------------------------------------------------------------------------
最後一點說明,spyder上並不能運行,可能也是不相容的問題,但用vi編輯程式還是可以跑的
由於PyNIO & PyNGL 算是目前很新的套件(2018年才釋出),未來一定會有更多的改進,不然這樣安裝真的很擾民XD