Pyplot 是 Matplotlib 的子庫,提供了和 MATLAB 類似的繪圖 API。
Pyplot 是常用的繪圖模塊,能很方便讓用戶繪制 2D 圖表。
Pyplot 包含一系列繪圖函數的相關函數,每個函數會對當前的圖像進行一些修改,例如:給圖像加上標記,生新的圖像,在圖像中產生新的繪圖區(qū)域等等。
使用的時候,我們可以使用 ?import
?導入 pyplot 庫,并設置一個別名 ?plt
?:
import matplotlib.pyplot as plt
這樣我們就可以使用 ?plt
?來引用 Pyplot 包的方法。
以下實例,我們通過兩個坐標 (0,0) 到 (0,100) 來繪制一條線:
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([0, 6])
ypoints = np.array([0, 100])
plt.plot(xpoints, ypoints)
plt.show()
輸出結果如下所示:
以上實例中我們使用了 Pyplot 的 plot() 函數, plot() 函數是繪制二維圖形的最基本函數。
plot() 用于畫圖它可以繪制點和線,語法格式如下:
# 畫單條線
plot([x], y, [fmt], *, data=None, **kwargs)
# 畫多條線
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)
參數說明:
>>> plot(x, y) # 創(chuàng)建 y 中數據與 x 中對應值的二維線圖,使用默認樣式
>>> plot(x, y, 'bo') # 創(chuàng)建 y 中數據與 x 中對應值的二維線圖,使用藍色實心圈繪制
>>> plot(y) # x 的值為 0..N-1
>>> plot(y, 'r+') # 使用紅色 + 號
顏色字符:'b' 藍色,'m' 洋紅色,'g' 綠色,'y' 黃色,'r' 紅色,'k' 黑色,'w' 白色,'c' 青綠色,'#008000' RGB 顏色符串。多條曲線不指定顏色時,會自動選擇不同顏色。
線型參數:'‐' 實線,'‐‐' 破折線,'‐.' 點劃線,':' 虛線。
標記字符:'.' 點標記,',' 像素標記(極小點),'o' 實心圈標記,'v' 倒三角標記,'^' 上三角標記,'>' 右三角標記,'<' 左三角標記...等等。
如果我們要繪制坐標 (1, 3) 到 (8, 10) 的線,我們就需要傳遞兩個數組 [1, 8] 和 [3, 10] 給 plot 函數:
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([1, 8])
ypoints = np.array([3, 10])
plt.plot(xpoints, ypoints)
plt.show()
以上代碼輸出結果為:
如果我們只想繪制兩個坐標點,而不是一條線,可以使用 o 參數,表示一個實心圈的標記:
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([1, 8])
ypoints = np.array([3, 10])
plt.plot(xpoints, ypoints, 'o')
plt.show()
以上代碼輸出結果為:
我們也可以繪制任意數量的點,只需確保兩個軸上的點數相同即可。
繪制一條不規(guī)則線,坐標為 (1, 3) 、 (2, 8) 、(6, 1) 、(8, 10),對應的兩個數組為:[1, 2, 6, 8] 與 [3, 8, 1, 10]。
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([1, 2, 6, 8])
ypoints = np.array([3, 8, 1, 10])
plt.plot(xpoints, ypoints)
plt.show()
以上代碼輸出結果為:
如果我們不指定 x 軸上的點,則 x 會根據 y 的值來設置為 0, 1, 2, 3..N-1。
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 10])
plt.plot(ypoints)
plt.show()
以上代碼輸出結果為:
從上圖可以看出 x 的值默認設置為 [0, 1]。
再看一個有更多值的實例:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10, 5, 7])
plt.plot(ypoints)
plt.show()
以上代碼輸出結果為:
從上圖可以看出 x 的值默認設置為 [0, 1, 2, 3, 4, 5]。
以下實例我們繪制一個正弦和余弦圖,在 plt.plot() 參數中包含兩對 x,y 值,第一對是 x,y,這對應于正弦函數,第二對是 x,z,這對應于余弦函數。
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0,4*np.pi,0.1) # start,stop,step
y = np.sin(x)
z = np.cos(x)
plt.plot(x,y,x,z)
plt.show()
以上代碼輸出結果為:
更多建議: