matplotlib 向任意位置添加一個(gè)子圖(axes)
當(dāng)前有效matplotlib
版本為:3.4.1
。
概述
axes()
函數(shù)功能與subplot()
函數(shù)極其相似。都是向當(dāng)前圖像(figure
)添加一個(gè)子圖(Axes
),并將該子圖設(shè)為當(dāng)前子圖或者將某子圖設(shè)為當(dāng)前子圖。兩者的區(qū)別在于subplot()
函數(shù)通過(guò)參數(shù)確定在子圖網(wǎng)格中的位置,而axes()
函數(shù)在添加子圖位置時(shí)根據(jù)4個(gè)坐標(biāo)確定位置。
函數(shù)的定義簽名為:matplotlib.pyplot.axes(arg=None, **kwargs)
函數(shù)的調(diào)用簽名為:
# 在當(dāng)前圖像中添加一個(gè)鋪滿(mǎn)的子圖 plt.axes() # 根據(jù)rect位置添加一個(gè)子圖 plt.axes(rect, projection=None, polar=False, **kwargs) # 將ax設(shè)置為當(dāng)前子圖 plt.axes(ax)
函數(shù)的參數(shù)為:
arg
: 取值為None
或四元組rect
。None
:使用subplot(**kwargs)
添加一個(gè)新的鋪滿(mǎn)窗口的子圖。- 四元組
rect
:rect = [left, bottom, width, height]
,使用~.Figure.add_axes
根據(jù)rect
添加一個(gè)新的子圖。
rect
的取值為以左下角為繪制基準(zhǔn)點(diǎn),確定高度和寬度。rect
的4個(gè)元素均應(yīng)在[0,1]
之間(即以圖像比例為單位)。projection
: 控制子圖的投影方式。{None, 'aitoff', 'hammer', 'lambert', 'mollweide', 'polar', 'rectilinear', str}
,默認(rèn)值為None
,即'rectilinear'
。polar
:相當(dāng)于設(shè)置projection='polar'
。可選參數(shù)。布爾值,默認(rèn)值為True
。sharex, sharey
:用于設(shè)置共享x/y軸。可選參數(shù)。Axes
對(duì)象。默認(rèn)值為None
。lables
:返回的子圖對(duì)象的標(biāo)簽。可選參數(shù)。字符串。**kwargs
:用于向創(chuàng)建子圖網(wǎng)格時(shí)用到的~matplotlib.gridspec.GridSpec
類(lèi)的構(gòu)造函數(shù)傳遞關(guān)鍵字參數(shù)。可選參數(shù)。字典。
函數(shù)的返回值為:
.axes.SubplotBase
實(shí)例,或其他~.axes.Axes
的子類(lèi)實(shí)例。
函數(shù)原理
axes
函數(shù)其實(shí)是Figure.add_subplot
和Figure.add_axes
方法的封裝。源碼為:
def axes(arg=None, **kwargs): fig = gcf() if arg is None: return fig.add_subplot(**kwargs) else: return fig.add_axes(arg, **kwargs)
案例:使用axes函數(shù)添加子圖
根據(jù)輸出可知,axes
添加的子圖是可以重疊的。
案例:混合應(yīng)用subplot、subplots、subplot2grid、axes函數(shù)
import matplotlib.pyplot as plt # 添加3行3列子圖9個(gè)子圖 fig, axes = plt.subplots(3, 3) # 為第1個(gè)子圖繪制圖形 axes[0, 0].bar(range(1, 4), range(1, 4)) # 使用subplot函數(shù)為第5個(gè)子圖繪制圖形 plt.subplot(335) plt.plot(1,'o') # 使用subplot2grid函數(shù)將第三行子圖合并為1個(gè) plt.subplot2grid((3,3),(2,0),colspan=3) # 在圖像0.5,0.5位置添加一個(gè)0.1寬0.1長(zhǎng)的背景色為黑色的子圖 plt.axes((0.5,0.5,0.1,0.1),facecolor='k') plt.show()
axes
函數(shù)與subplot
、subplots
、subplot2grid
函數(shù)的對(duì)比
相同之處:
axes
函數(shù)與subplot
、subplot2grid
函數(shù)都是添加一個(gè)子圖。
不同之處:
axes
函數(shù)可在圖像中的任意位置添加子圖。subplot
、subplots
、subplot2grid
函數(shù)只能根據(jù)固定的子圖網(wǎng)格位置添加子圖。
axes
函數(shù)創(chuàng)建的子圖可重疊。subplot
、subplots
、subplot2grid
函數(shù)創(chuàng)建的子圖如果位置重疊,會(huì)覆蓋掉原有的子圖(刪除原有子圖)。
到此這篇關(guān)于matplotlib 向任意位置添加一個(gè)子圖(axes)的文章就介紹到這了,更多相關(guān)matplotlib任意位置添加子圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python使用tensorflow保存、加載和使用模型的方法
本篇文章主要介紹了python使用tensorflow保存、加載和使用模型的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01將Dataframe數(shù)據(jù)轉(zhuǎn)化為ndarry數(shù)據(jù)的方法
今天小編就為大家分享一篇將Dataframe數(shù)據(jù)轉(zhuǎn)化為ndarry數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06使用Python和Scribus創(chuàng)建一個(gè)RGB立方體的方法
這篇文章主要介紹了使用Python和Scribus創(chuàng)建一個(gè)RGB立方體的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Python+pytorch實(shí)現(xiàn)天氣識(shí)別
這篇文章主要為大家詳細(xì)介紹了如何利用Python+pytorch實(shí)現(xiàn)天氣識(shí)別功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下2022-10-10python的pdb調(diào)試命令的命令整理及實(shí)例
這篇文章主要介紹了python的pdb調(diào)試命令的命令整理及實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-07-07Python tkinter事件高級(jí)用法實(shí)例
這篇文章主要介紹了Python tkinter事件高級(jí)用法,結(jié)合實(shí)例形式分析了Python使用tkinter模塊的事件響應(yīng)及圖形繪制相關(guān)操作技巧,需要的朋友可以參考下2018-01-01Python語(yǔ)言的面相對(duì)象編程方式初步學(xué)習(xí)
這篇文章主要介紹Python語(yǔ)言的面相對(duì)象編程方式的初步學(xué)習(xí),包括類(lèi)和對(duì)象以及繼承特性等知識(shí),需要的朋友可以參考下2016-03-03Python3 JSON 數(shù)據(jù)解析及日期和時(shí)間小結(jié)
這篇文章主要介紹了Python3 JSON 數(shù)據(jù)解析及日期和時(shí)間,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-02-02