在這篇文章中,將列出一系列Matplotlib繪圖示例,包含生成它們的代碼。
線圖
以下是使用plot()
創建帶有文本標籤的plot()
方法。
圖中的多個子圖
使用subplot()
函數創建多個軸(即子圖):
圖片
Matplotlib可以使用imshow()
函數顯示圖像(假設水準尺寸相等)。
輪廓和偽彩色
即使水準尺寸不均勻,pcolormesh()
函數也可以製作二維數組的彩色表示。contour()
函數是表示相同數據的另一種方式:
比較pcolormesh()
和contour()
繪製二維數據的示例。
直方圖
hist()
函數自動生成直方圖並返回bin
計數或概率:
路徑圖
可以使用matplotlib.path
模組在Matplotlib中添加任意路徑:
三維繪圖
mplot3d工具包(參見入門和3D繪圖)支持簡單的三維圖形,包括曲面,線框,散點圖和條形圖。
使用到 John Porter,Jonathon Taylor,Reinier Heeres和Ben Root的mplot3d工具包。此工具包包含在所有標準Matplotlib安裝中。
Streamplot
streamplot()
函數繪製向量場的流線。除了簡單地繪製流線圖之外,它還允許將流線的顏色和/或線寬映射到單獨的參數,例如向量場的速度或局部強度。
此功能補充了用於繪製向量場的quiver()
函數。
橢圓形
為了支持菲尼克斯火星任務(使用Matplotlib顯示航天器的地面跟蹤),Michael Droettboom建立在Charlie Moad的工作基礎上,為橢圓弧(參見Arc)提供極其精確的8樣條近似,它對縮放不敏感。
條形圖
使用bar()
函數製作條形圖,其中包括錯誤欄等自定義:
餅狀圖
pie()
函數用於創建餅圖。可選功能包括自動標記區域的百分比,從餅圖中心爆炸一個或多個楔形,以及陰影效果。仔細查看附加的代碼,只需幾行代碼即可生成此圖。
表圖
table()
函數將一個文本表添加到軸。
散點圖
scatter()
函數使用(可選)大小和顏色參數創建散點圖。此示例繪製了Google股票價格的變化,標記尺寸反映了交易量和顏色隨時間變化。這裏,alpha
屬性用於製作半透明圓圈標記。
GUI小部件
Matplotlib具有獨立於使用的圖形用戶介面的基本GUI小部件,允許編寫跨GUI圖形和小部件。請參閱matplotlib.widgets和小部件示例。
填充曲線
fill()
函數可以繪製填充的曲線和多邊形:
日期處理
可以繪製具有主要和次要刻度的時間序列數據以及兩者的自定義刻度格式器。
對數圖
semilogx()
,semilogy()
和loglog()
函數簡化了對數圖的創建。
極座標圖
polar()
函數生成極座標圖。
圖例
legend()
函數自動生成圖形圖例,具有MATLAB相容的圖例放置功能。
文本對象的TeX符號
下麵是Matplotlib內部mathtext
引擎現在支持的許多TeX運算式的示例。mathtext模組使用FreeType和DejaVu,BaKoMa電腦現代或STIX字體提供TeX樣式的數學運算式。
Matplotlib的mathtext基礎結構是一個獨立的實現,不需要在您的電腦上安裝TeX或任何外部軟體包。
原生TeX渲染
雖然Matplotlib的內部數學渲染引擎非常強大,但有時候你需要TeX。Matplotlib支持使用usetex
選項對字串進行外部TeX渲染。
EEG GUI
可以將Matplotlib嵌入到pygtk,wx,Tk或Qt應用程式中。它是一個名為pbrain的EEG查看器的螢幕截圖。
子圖示例
許多繪圖類型可以組合在一個圖中,以創建強大而靈活的數據表示。
示例代碼 -
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(19680801)
data = np.random.randn(2, 100)
fig, axs = plt.subplots(2, 2, figsize=(5, 5))
axs[0, 0].hist(data[0])
axs[1, 0].scatter(data[0], data[1])
axs[0, 1].plot(data[0], data[1])
axs[1, 1].hist2d(data[0], data[1])
plt.show()