主頁(yè) > 知識(shí)庫(kù) > matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用

matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用

熱門標(biāo)簽:南京銷售外呼系統(tǒng)軟件 上海機(jī)器人外呼系統(tǒng)哪家好 房產(chǎn)電銷外呼系統(tǒng) 浙江電銷卡外呼系統(tǒng)好用嗎 地圖標(biāo)注微信發(fā)送位置不顯示 地圖標(biāo)注的意義點(diǎn) 地圖制圖標(biāo)注位置改變是移位嗎 蓋州市地圖標(biāo)注 315電話機(jī)器人廣告

概述

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)格,然后將子圖添加到對(duì)應(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對(duì)象:

函數(shù)的返回值為:axes.SubplotBase對(duì)象或 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對(duì)象
ax=plt.subplot(339)
# 使用Axes的方法(面向?qū)ο竽J剑├L制點(diǎn)
ax.plot([1],'o')

plt.show()

pyplot.plot()源碼如下,通過源碼可知pyplot模塊的函數(shù)底層調(diào)用的是Axes對(duì)象的對(duì)應(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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python使用matplotlib:subplot繪制多個(gè)子圖的示例
  • matplotlib subplot繪制多個(gè)子圖的方法示例
  • Python matplotlib讀取excel數(shù)據(jù)并用for循環(huán)畫多個(gè)子圖subplot操作
  • matplotlib繪制多個(gè)子圖(subplot)的方法
  • matplotlib subplots 調(diào)整子圖間矩的實(shí)例
  • matplotlib.subplot()畫子圖并共享y坐標(biāo)軸的方法

標(biāo)簽:陽(yáng)泉 日照 臨汾 克拉瑪依 貴州 赤峰 雙鴨山 金華

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用》,本文關(guān)鍵詞  matplotlib,之,pyplot,模塊,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于matplotlib之pyplot模塊實(shí)現(xiàn)添加子圖subplot的使用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章