機器學(xué)習(xí)之numpy和matplotlib學(xué)習(xí)(七)

今天我們來學(xué)習(xí)第三種畫子圖的方法。
主要使用到的模塊是matplotlib.gridspec
學(xué)習(xí)過程請參考代碼里面的注釋:
全部代碼如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author  : SundayCoder-俊勇
# @File    : figure8.py
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec


plt.figure()
x=np.linspace(-5,5,50)
y=2*x+1

# 還是創(chuàng)建一個3x3網(wǎng)格布局,并將這個變量賦值與gs,行和列的序號從0開始。
gs=gridspec.GridSpec(3,3)
# 采用plt.subplot()來繪制子圖。
# 傳入?yún)?shù)[0,:],0代表第一行,:在python里面表示全部。意思也就是說占全部3列。
pc1=plt.subplot(gs[0,:])
pc1.plot(x,y)

# 傳入?yún)?shù)[1,2],1代表第二行,2代表第三列。也就是這個子圖占的位置是兩行三列的位置。
pc2=plt.subplot(gs[1,2])
pc2.plot(x,y)
# 傳入?yún)?shù)[2,1],2代表第三行,1代表第二列。也就是這個子圖占的位置是三行兩列的位置。
pc3=plt.subplot(gs[2,1])
pc3.plot(x,y)

plt.show()

結(jié)果如下:


這里寫圖片描述

改變參數(shù)來畫圖試一下:
改變后的全部代碼如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author  : SundayCoder-俊勇
# @File    : figure8.py
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec


plt.figure()
x=np.linspace(-5,5,50)
y=2*x+1

# 還是創(chuàng)建一個3x3網(wǎng)格布局,并將這個變量賦值與gs,行和列的序號從0開始。
gs=gridspec.GridSpec(3,3)
# 采用plt.subplot()來繪制子圖。
# 傳入?yún)?shù)[0,:],0代表第一行,:在python里面表示全部。意思也就是說占全部3列。
pc1=plt.subplot(gs[0,:])
pc1.plot(x,y)

# 傳入?yún)?shù)[1,:2],1代表第二行,: 2代表代表從第一列到第三列【不包含第三列】。
# 也就是這個子圖占的位置是兩行前兩列的位置。
# 這和列表list的操作一樣。
pc2=plt.subplot(gs[1,:2])
pc2.plot(x,y)
# 傳入?yún)?shù)[2,1],2代表第三行,1代表第二列。也就是這個子圖占的位置是三行兩列的位置。
pc3=plt.subplot(gs[2,1])
pc3.plot(x,y)

plt.show()

結(jié)果如下:


這里寫圖片描述

更新完畢##

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容