Python氣象繪圖教程(四)

2021-02-21 氣象學家

本節提要:回顧複習,新的調整命令。

一、回顧複習

前面講到Python庫包的下載與安裝,推薦使用conda命令進行安裝,通過conda list查看當前已經安裝好的庫包及版本。

畫圖步驟:①import       ###引入庫包###

                 ②fig=plt.figure()   ###準備畫布###

                 ③讀取數據

                 ④ax=fig.add_subplot()   ###添加作圖區###

                 ⑤繪製圖形

                 ⑥plt.show()   ###展示圖形###

畫布figure及其參數、繪圖區axes、多子圖的繪製命令(subplots)。

常用的折線圖plot的基礎參數(linestyle、linewidth、color、alpha、marker)

一個解決因為單位不一致導致出圖畸形的小命令twin。

二、新的內容

今天主要講解坐標軸網格線和標題、圖例、合併兩幅子圖的橫坐標並取消空白:

A、坐標軸在不設置時,會自動根據數據的大小進行最合適的展示(當然只是電腦認為最合適的),但沒有坐標軸的名字,大多數時候需要定製坐標軸。

定製坐標軸名,通過xlabel('你需要設置的內容')或者ylabel('你需要設置的內容')進行設置;定製標題,可以通過title('你需要添加的標題')。下面這個小程序講解:
fig=plt.figure(figsize=(2,2))fig,ax=plt.subplots(dpi=200)ax.plot(x,tem,c='k',lw=1,ls='-',marker='d')

這是一張素圖,沒有任何設置,是電腦判定的最佳展示,現在通過下面語句定製化出圖:
ax.set_title('實驗氣溫圖')ax.set_xlabel('時間')ax.set_ylabel('氣溫 ℃')

這樣就進行了一番簡單的定製化。現在看來似乎x,y軸名稱字號偏小,可以通過字典參數方式進行調節:
font={'size':20,'color':'red'}ax.set_xlabel('時間',fontdict=font)ax.set_ylabel('氣溫 ℃',fontdict=font)

在字典中存儲需要修改的的參數名稱和指定值大小,在這個圖中,我將字號(size)修改為20,將顏色(color)修改為紅色。當然,字典裡還可以存放更多的參數,這裡只修改了兩種,剩下讀者可自行探索。另外,matplotlib中還可以顯示網格線,命令為ax.grid()

grid()中還可以進行設置,比如開啟虛線ax.grid(ls='--')

還可以指定是否開啟x,y軸網格線ax.grid(True,axis='y')

B、在昨天繪製的觀測圖中,出現了三種樣式,為了區分識別他們,在圖中添加了圖例:

plt.legend((line1,bar1,line2),('氣溫','降水量','氣壓'),loc='center left')

添加圖例的命令是legend(),前面是圖上的線條和柱形圖的名稱,後面是你指定的顯示出來的名稱,注意應當一一對應。

C、昨天講解了如何在同一子圖中合併橫坐標軸,那用到了twin命令。今天將了解如何合併兩幅子圖的坐標軸,這幅圖展示了去年月平均氣溫和累年月平均氣溫距平變化。
fig,((ax1),(ax2))=plt.subplots(2,1,figsize=(5,5),dpi=200,sharex='all')fig.subplots_adjust(hspace=0)line1,=ax1.plot(x,tem,color='k',lw=1.5,ls='--')bar1=ax2.bar(x,Anomaly,color=np.where(Anomaly>0,'red','b'))ax1.set_ylabel('月平均氣溫 ℃')ax2.set_ylabel('氣溫距平 ℃')ax2.set_xlabel('月份')ax2.set_xticks(x)plt.show()

注意第一排中的sharex='all'命令,這是令兩幅子圖共享x軸。而第二排中的命令,指令兩個之間的空白等於0。

改動前(素圖):

在繪製氣溫距平的柱狀圖時,如何使正負柱體的顏色不一致呢。numpy中提供了一個np.where(判定語句,符合判定語句返回值,不符合判定語句返回值)命令,如何理解這個命令,通過一個測試演示:

在本程序中,指令判斷距平是否大於零,大於零返回「red」,否則返回「blue」。

相關焦點

  • Python氣象繪圖教程(三)
    官網給出了很多符號樣式,可挑選你覺得好看的符號樣式即可(雖然我覺得沒幾個好看的):氣象上常用的有三線圖、五線圖。三線圖主要是日常氣象分析的氣壓、氣溫、溼度(或其他繪圖量)有時還會繪製降水柱狀圖。五線圖主要是展示春夏秋冬和年平均的變化關係。一張圖如果有更多的線條會使得界面凌亂不堪,不能用於科學分析。
  • Python氣象繪圖教程(六)
    其中一部分來自氣象家園網站的現成帖子。A、使用savefig(''picture name'')保存圖像文件時,保存的圖片是空白的。解決辦法:第一種,將savefig命令移動至plt.show()命令之前。第二種,查看命令是否為fig.savefig(),一般來說,使用了figure,ax命令後,plt.savefig()需要更改為fig.savefig()。
  • 「繪圖,讓科學生動起來」:Python-matplotlib繪圖(專題一)python環境搭建篇
    筆者寄語:各位好,從今天開始,「科學是什麼東東」將推出一個全新系列專題:採用時下最流行的python計算機設計語言,對其中的一個第三方繪圖庫,即matplotlib繪圖庫進行講解,並將其強大的繪圖與編程功能應用到數學函數,化學,地理,物理,教育等諸多領域。
  • 利用Python對WRFout文件進行簡單繪圖
    還有這樣:關於namelist,其他的注意事項在言深深大佬的教程裡說得很詳細了,網絡上也有很多補充的文檔,就是在這個地方需要注意一下:我比較習慣用圓柱投影來畫圖(cartopy裡是PlateCarree()這個命令),所以是這麼寫namelist
  • Python氣象繪圖教程(十四)
    所謂一圖敵千言,在氣象科研領域,圖表是進行數據可視化的利器,而圖例是幫助閱讀者理解圖表信息的關鍵。繪圖庫matplotlib中專門闢出一個命令——Legend進行設置。下面首先介紹其常用關鍵字參數。
  • python的繪圖利器--海龜繪圖turtle
    作為你學習python的第一個程序,樹哥決定直接來一個實戰乾貨程序:利用海龜turtle來畫一個奧運五環。這樣就既可以理解庫的概念和使用,又可以理解程序的基本概念。這個語句是個固定格式,有這句話畫完圖,繪圖窗口還保留,如果沒有這句話,繪圖窗口就直接關閉了,所以初期都加上就好了。
  • Excel學習教程 & Python全套教程
    各位小夥伴們,今天給大家分享兩個非常有用的資料:Excel學習教程和Python全套教程。
  • 如何用matplotlib繪圖呢?
    使用過python做數據分析的小夥伴都知道,matplotlib是一款命令式、較底層、可定製性強、圖表資源豐富、簡單易用、出版質量級別的python 2D繪圖庫。matplotlib算是python繪圖的元老級庫,類似程式語言裡的C語言。
  • 小白開始學Python最著名的繪圖庫
    今天就先了解一下Python中最著名的繪圖庫Matplotlib,看看到底如何做出漂亮的圖有的小夥伴不解,為啥叫它鼻祖的,因為其他的可視化的數據包都是從它演變而來,二次封裝的。Matplotlib本身是免費而且開源的,貌看一下感覺非常複雜,API超級多。
  • Python機器學習·微教程
    該教程共分為11小節。在這個教程裡,你將學會:如何處理數據集,並構建精確的預測模型使用Python完成真實的機器學習項目這是一個非常簡潔且實用的教程,希望你能收藏,以備後面複習!接下來進入正題~這個微課程適合誰學習?如果你不符合以下幾點,也沒關係,只要花點額外時間搞清楚知識盲點就能跟上。
  • 無所不能的python編程是怎麼快速畫圖的呢?5分鐘學會!
    turtle繪圖turtle繪圖是python中引入的一個簡單繪圖工具,利用turtle模塊繪圖又被稱為海龜作圖,因為繪圖過程可以看作是一個小海龜行走的軌跡。海龜就像是屏幕上的畫筆,屏幕就是畫布。1.1導入turtle模塊使用turtle繪圖時,首先要導入turtle模塊,有以下兩種方式:(說明:在python中調入模塊函數無外乎兩種方法:import +函數名(numpy ,matplotlib.pyplt ,math 等;from +函數名 import *)
  • MNE-Python的簡易中文教程簡單入門
    隨著MNE的使用越來越普及,身在疫區的我決定用業餘時間入坑一下MNE-Python,在自己的學習過程中也一起分享一下這個優質的腦電/腦磁數據分析包,內容上算是對官網教程的一個翻譯加精簡。MNE-Python的下載安裝很簡單,具體可參考https://mne.tools/stable/install/mne_python.html#installing-python。
  • Python 繪圖庫 Matplotlib 入門教程
    (點擊上方公眾號,可快速關注)來源:強波的技術博客qiangbo.space/2018-04-06/matplotlib_l1/Matplotlib是一個Python語言的2D繪圖庫如果你已經有了本文的運行環境,將上面的代碼保存到一個文本文件中(或者通過Github獲取本文的源碼),然後通過下面的命令就可以在你自己的電腦上看到上面的圖形了:python3 test.py 注1:後面的教程中,我們會逐步講解如何定製圖中的每一個細節。例如:坐標軸,圖形,著色,線條樣式,等等。
  • 只要十分鐘,python繪圖神器turtle了解一下?
    python的強大在於它有許多的強大的庫,turtle就是其中之一。利用turtle,你可以進行交互式的繪畫,作為一個藝術白痴,想要畫一幅畫可能很困難,但是利用python的turtle庫,只需要幾行代碼你就能實現繪畫。
  • python教程
    python視頻教程     文章底部留言 序號 給您發送視頻教程連結或者加微信 bigzql 索要Python
  • 氣象編程 | 中國地圖shp文件和Python繪圖實例
    gmt-china.org/data/MeteoAI(zhangqibot)省級行政邊界含九段線https://cloud.tencent.com/developer/article/1484356整理後的shp文件連結: https://pan.baidu.com/s/1Di_mEd27LQ343mXdmZxdQg 提取碼: nkdePython繪圖示例
  • 全套免費的3D科研繪圖教程就在這裡!
    友情提示:Ⅰ、所有教程均為原創,未經允許不得擅自挪作他用;Ⅱ、每期連結的圖片還註明了教程中使用的主要方法和知識點(見下方圖片);Ⅲ、教程難度由簡入深,所用方法不一定是最便捷的有豐富的科研繪圖和培訓經驗,聯繫方式——QQ:244308002    WeChat:memorylhd更多問題可在微信後臺留言,或者加入我們的QQ學習交流群3D科研繪圖學習交流
  • python推薦 | 面向地學領域的Python庫匯總
    •csv, xlsx等格式:pandas你值得擁有,無論是氣象還是其他領域的類似格式數據,使用pandas可以解決你的常用操作。•HDF格式:pandas和h5py可以處理hdf5格式,PyHDF可以處理hdf4格式。
  • 第350期博士生創新論壇 | Python信息處理與繪圖
    浙大AI俱樂部聯合浙江大學博士生會給大家送教程啦!Python語言是目前推動數據科學如人工智慧、大數據、金融分析和機器學習算法實現等最為強大的動力引擎。通過此次活動,希望參與的同學能夠入門Python,並且利用Python結合機器學習相關算法對於數據、文本信息進行處理,同時,也能夠進行繪圖,從而在論文寫作過程與實驗過程中能夠使用。本次活動是博創論壇中少有的技能提升營,我們將從學生角度出發,著重新手教學!
  • Python微課 | Seaborn——Python優雅繪圖(上)
    Matplotlib:Python基礎繪圖包(本課中輔助繪圖)本節課內容與目的:通過官方文檔(Document)裡的現成示例學習Seaborn包,熟悉Seaborn繪圖背景的調節。示例2:男性女性用餐時間和用餐價格可視化學習內容:ggplot背景風格繪圖,柱狀圖。