Matplotlib概貌
Matplotlib 是 Python 的一個 2D 繪圖庫,它以各種硬拷貝格式和跨平臺的互動式環境生成出版質量級別的圖形,在進行資料處理時,有時會需要將部分資料以各種圖形形式展示出來,例如直方圖、功率譜、條形圖、錯誤圖以及散點圖等,從中可以直觀地看清資料間的各種關系或規律,這時就需要用到這個強大的繪圖庫,Matplotlib是參照matlab的強大繪圖功能設計而得,所以部分語法特征與matlab類似,
特殊命令%matplotlib
在ipython和jupyter環境下,%matplotlib可以將matplotlib的圖表直接嵌入到Notebook之中,通常所見的命令%matplotlib inline,其中inline引數表示將圖表嵌入到Notebook中,
簡單來說,在ipython或jupyter中繪圖時,如果沒有使用%matplotlib inline,則需要執行兩次繪圖代碼才能顯示圖形,只執行一次只會輸出該圖形物件,
示例如下:
不使用特殊命令
第一次執行繪圖代碼后:

第二次執行繪圖代碼后:

使用特殊命令
只執行一次,即可輸出圖形:

中文亂碼問題
在繪圖時,有時需要給影像添加圖例、橫縱坐標名稱等專案,此時會不可避免地用到中文,matplotlib默認狀態下不支持中文顯示,所以需要進行進一步設定,
示例如下:
默認狀態下

代碼臨時處理

注意:以上代碼處理方式只能臨時起作用,如果重啟編譯器,在不添加處理代碼的情況下,依舊不能顯示中文,若要一勞永逸地處理,則需要字體下載安裝等操作,本文不再詳述,
畫板與子圖
平常情況
平常使用matplotlib進行畫圖時,代碼類似于下面這樣:

多子圖并列
但是,若需要同時顯示多個圖形,則需要用到子圖功能;matplotlib畫圖是在畫板上進行的,可以將多個圖形顯示在一個畫板上,這些圖相對于畫板稱為子圖,

從這應該看到,前一個例子(平常情況)只是在畫板上僅創建了一個子圖,屬于多子圖并列顯示的一種特殊情況,
畫圖基礎
默認狀況下,matplotlib會將傳入的橫縱坐標用線段直連:

當然,對于資料點和所連線段的屬性可以進行重新設定:

誠然,上述幾個例子只能用作示例,真正需要使用matplotlib時,需要將處理的資料送入繪圖函式,繪制出能夠展現資料特征和規律的條形圖、柱狀圖、直方圖、散點圖等多種多樣的有效圖形,這也是在資料探索階段必需的工具,將在后文資料探索專題中詳細介紹,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/183603.html
標籤:Python
上一篇:Python學習筆記(二)串列
