matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用
概述
subplot()
函數(shù)向當(dāng)前圖像(figure
)添加一個(gè)子圖(Axes
),并將該子圖設(shè)為當(dāng)前子圖?;蛘邔⒛匙訄D設(shè)為當(dāng)前子圖。
pyplot.subplot()
其實(shí)是Figure.add_subplot()
的一個(gè)封裝。
函數(shù)的定義簽名為:matplotlib.pyplot.subplot(*args, **kwargs)
函數(shù)的調(diào)用簽名為:
subplot(nrows, ncols, index, **kwargs)
subplot(pos, **kwargs)
subplot(**kwargs)
subplot(ax)
函數(shù)的參數(shù)為:
*args
:定義子圖的位置。int
、 (int, int, index)
或 SubplotSpec
, 默認(rèn)值為(1, 1, 1)
*args
由以下三種定義方式。
- 三個(gè)整數(shù)構(gòu)成的三元組
(nrows, ncols, index)
:首先構(gòu)成一個(gè)nrows行和ncols列的網(wǎng)格,然后將子圖添加到對應(yīng)index索引位置。 index從1開始累計(jì),1為左上角,依次向右遞增. index也可以是是一個(gè)二元組,例如fig.add_subplot(3, 1, (1, 2))。 - 三位整數(shù):每一位數(shù)字可以分解為單獨(dú)的整數(shù),因此,這種方法最好用于子圖少于9個(gè)的情況(index最大只能為9)。比如plt.subplot(235)等價(jià)于plt.subplot(2, 3, 5)。
SubplotSpec
對象:
函數(shù)的返回值為:axes.SubplotBase
對象或 Axes
的其他子類。
案例:規(guī)則布局
import matplotlib.pyplot as plt # 添加3行3列子圖中的第1個(gè)子圖,并將其為當(dāng)前子圖 plt.subplot(331) plt.bar(range(1,4),range(1,4)) # 添加3行3列子圖中的第5個(gè)子圖,并將其為當(dāng)前子圖 plt.subplot(335) plt.pie([4,5,6]) # 添加3行3列子圖中的第9個(gè)子圖,并將其為當(dāng)前子圖 # 返回值為Axes對象 ax=plt.subplot(339) # 使用Axes的方法(面向?qū)ο竽J剑├L制點(diǎn) ax.plot([1],'o') plt.show()
pyplot.plot()
源碼如下,通過源碼可知pyplot
模塊的函數(shù)底層調(diào)用的是Axes
對象的對應(yīng)方法。
def plot(*args, scalex=True, scaley=True, data=None, **kwargs): return gca().plot( *args, scalex=scalex, scaley=scaley, **({"data": data} if data is not None else {}), **kwargs)
不規(guī)則布局
通常子區(qū)函數(shù)subplot()
用來完成等分畫布的繪圖展示的任務(wù),如果在畫布上需要進(jìn)行非等分畫布的圖形展示時(shí),我們可以多次調(diào)用函數(shù)subplot()
來完成非等分畫布的繪圖準(zhǔn)備任務(wù)。
import matplotlib.pyplot as plt # 繪制1行2列子圖中的第1個(gè)子圖 plt.subplot(121,facecolor='r') # 繪制2行2列子圖中的第2個(gè)子圖 plt.subplot(222,facecolor='g') # 繪制2行2列子圖中的第4個(gè)子圖 plt.subplot(224,facecolor='b') plt.show()
import matplotlib.pyplot as plt # 繪制3行2列子圖中的第1個(gè)子圖 plt.subplot(321,facecolor='r') # 繪制3行2列子圖中的第2個(gè)子圖 plt.subplot(322,facecolor='r') # 繪制3行2列子圖中的第3個(gè)子圖 plt.subplot(323,facecolor='r') # 繪制3行2列子圖中的第4個(gè)子圖 plt.subplot(324,facecolor='r') # # 繪制3行1列子圖中的第3個(gè)子圖 plt.subplot(313,facecolor='b') plt.show()
subplot()
函數(shù)有一個(gè)非常重要的特性:
在創(chuàng)建新的子圖時(shí),如果新建子圖與原有的子圖存在重疊的情況,那么會(huì)刪除原有重疊的子圖。
例如:
import matplotlib.pyplot as plt # 繪圖時(shí)隱含創(chuàng)建subplot(111) plt.plot([1, 2, 3]) # 創(chuàng)建一個(gè)新的子圖,由于與原子圖重疊,因此刪除原有子圖 plt.subplot(211) plt.show()
到此這篇關(guān)于matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用的文章就介紹到這了,更多相關(guān)matplotlib 添加子圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 基本數(shù)據(jù)類型占用內(nèi)存空間大小的實(shí)例
今天小編就為大家分享一篇python 基本數(shù)據(jù)類型占用內(nèi)存空間大小的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06pandas讀取excel統(tǒng)計(jì)空值數(shù)量錯(cuò)誤的解決方法
pd.read_excel()讀取excel數(shù)據(jù)后,用pd.isnull().sum()統(tǒng)計(jì)空值數(shù)量不對,本文主要介紹了pandas讀取excel統(tǒng)計(jì)空值數(shù)量錯(cuò)誤的解決方法,感興趣的可以了解一下2024-04-04pytorch查看網(wǎng)絡(luò)參數(shù)顯存占用量等操作
這篇文章主要介紹了pytorch查看網(wǎng)絡(luò)參數(shù)顯存占用量等操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-05-05教你使用Pandas直接核算Excel中的快遞費(fèi)用
文中仔細(xì)說明了怎么根據(jù)賬單核算運(yùn)費(fèi).首先要確定運(yùn)費(fèi)規(guī)則,然后根據(jù)運(yùn)費(fèi)規(guī)則編寫代碼,生成核算列(快遞費(fèi) = 省份*重量),最后輸入賬單,進(jìn)行核算.將腳本件生成EXE文件,就可以使用啦,需要的朋友可以參考下2021-05-05Python?OpenCV實(shí)現(xiàn)人物動(dòng)漫化效果
這篇文章主要介紹了利用Python和OpenCV實(shí)現(xiàn)人物的動(dòng)漫化特效,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python和OpenCV有一定的幫助,需要的可以了解一下2022-01-01使用Python實(shí)現(xiàn)下載網(wǎng)易云音樂的高清MV
本文給大家分享的是一則使用Python實(shí)現(xiàn)下載網(wǎng)易云音樂中高清MV的代碼,本人新手,沒有做特別的功能,僅僅是直接循環(huán)了MV的id,小伙伴們可以自己擴(kuò)展下。2015-03-03