您好,登錄后才能下訂單哦!
如何使用Python中的可視化工具Matplotlib,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Matplotlib是一個Python 2D繪圖庫和一些基本的3D圖表,可以生成各種格式圖片。Matplotlib可用于Python腳本,Python shell,Jupyter筆記本,Web應用程序服務器等等。
查看Matplotlib 版本
>>> import matplotlib >>> matplotlib.__version__ '3.0.3'
在Python 中調用Matplotlib,通常使用 import matplotlib.pyplot 調用Matplotlib 集成的快速繪圖 pyplot模塊。
Figure(整個圖像)
在任何繪圖之前,需要一個Figure對象,可以理解成需要一張畫板才能開始繪圖。
import matplotlib.pyplot as plt fig = plt.figure()
在Matplotlib中,整個圖像為一個Figure 對象。Figure對象中可以包含一個或者多個Axes對象,每個Axes 對象都是一個擁有自己坐標系統的繪圖區域。
Axes(軸線)
在擁有Figure對象之后,在作畫前還需要軸,沒有軸的話就沒有繪圖基準,所以需要添加Axes。也可以理解成為真正可以作畫的紙。
ax = fig.add_subplot(111) ax.set(xlim=[0, 5], ylim=[0, 6], title='An Example Axes', ylabel='Y-Axis', xlabel='X-Axis') plt.show()
上述代碼,在一幅圖上添加了一個Axes,然后設置了這個Axes的X軸以及Y軸的取值范圍,以及一些文本信息。效果如下:
Matplotlib下, 一個 Figure 對象可以包含多個子圖(Axes),可以使用 subplot() 快速繪制,其調用形式如下 :
subplot(numRows, numCols, plotNum)
圖表的整個繪圖區域被分成 numRows 行和 numCols 列;
然后按照從左到右,從上到下的順序對每個子區域進行編號,左上的子區域的編號為1;
plotNum 參數指定創建的 Axes 對象所在的區域;
對于上面的fig.add_subplot(111)就是添加Axes的,參數的解釋的在畫板的第1行第1列的***個位置生成一個Axes對象來準備作畫。
也可以通過fig.add_subplot(2, 2, 1)的方式生成Axes,前面兩個參數確定了面板的劃分。
如果 numRows, numCols 和 plotNum 這三個數都小于 10 的話, 可以把它們縮寫為一個整數, 例如 subplot(221) 和 subplot(2,2,1) 是相同的。
subplot 在 plotNum 指定的區域中創建一個軸對象。如果新創建的軸和之前創建的軸重疊的話,之前的軸將被刪除。
Multiple Axes 多個子圖
下面的一次性生成所有 Axes:
簡單總結一下
在最頂層的是畫布,稱之為figure;
在畫布上可以在不同的區域上繪制,這些區域稱之為subplot;
每一個子圖區域,又可以做如下劃分:
axis 也就是x,y坐標軸;
tick 也就是每一個坐標軸的刻度;
label 也就是坐標軸上的標簽;
title 也就是每一個子圖的標題;
data 是輸入的數據繪制出的圖像;
Matplotlib 繪圖演示代碼
將這個圖像劃分成8個子區域,每個子區域繪制一個不同的圖像。
import numpy as np import matplotlib.pyplot as plt x=[1,2,3,4] y=[3,5,10,25] # 創建子圖 plt.subplot(241) plt.plot(x,y) plt.title("plot") plt.subplot(242) plt.scatter(x, y) plt.title("scatter") plt.subplot(243) plt.pie(y) plt.title("pie") plt.subplot(244) plt.bar(x, y) plt.title("bar") plt.subplot(245) plt.boxplot(y, sym="o") plt.title("box") # sin/cos 圖像 plt.subplot(246) x = np.linspace(0, np.pi) y_sin = np.sin(x) y_cos = np.cos(x) plt.plot(x, y_sin) plt.plot(x, y_cos) # g-- 設置線條樣式和顏色 plt.subplot(247) plt.plot(x, y_sin, 'g--') plt.title("sin") # 加載本地圖片 import matplotlib.image as mpimg img=mpimg.imread('666.jpg') plt.subplot(248) plt.imshow(img) plt.title("cool...") plt.show()
關于如何使用Python中的可視化工具Matplotlib問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。