您好,登錄后才能下訂單哦!
小編給大家分享一下python怎么實(shí)現(xiàn)在一個(gè)畫布上畫多個(gè)子圖,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
matplotlib 是可以組合許多的小圖, 放在一張大圖里面顯示的. 使用到的方法叫作 subplot.
均勻畫圖
使用import導(dǎo)入matplotlib.pyplot模塊, 并簡(jiǎn)寫成plt. 使用plt.figure創(chuàng)建一個(gè)圖像窗口.
import matplotlib.pyplot as plt plt.figure()
使用plt.subplot來創(chuàng)建小圖. plt.subplot(2,2,1)表示將整個(gè)圖像窗口分為2行2列, 當(dāng)前位置為1. 使用plt.plot([0,1],[0,1])在第1個(gè)位置創(chuàng)建一個(gè)小圖.
plt.subplot(2,2,1) plt.plot([0,1],[0,1])
plt.subplot(2,2,2)表示將整個(gè)圖像窗口分為2行2列, 當(dāng)前位置為2. 使用plt.plot([0,1],[0,2])在第2個(gè)位置創(chuàng)建一個(gè)小圖.
plt.subplot(2,2,2) plt.plot([0,1],[0,2])
plt.subplot(2,2,3)表示將整個(gè)圖像窗口分為2行2列,當(dāng)前位置為3. plt.subplot(2,2,3)可以簡(jiǎn)寫成plt.subplot(223), matplotlib同樣可以識(shí)別. 使用plt.plot([0,1],[0,3])在第3個(gè)位置創(chuàng)建一個(gè)小圖.
plt.subplot(223) plt.plot([0,1],[0,3])
plt.subplot(224)表示將整個(gè)圖像窗口分為2行2列, 當(dāng)前位置為4. 使用plt.plot([0,1],[0,4])在第4個(gè)位置創(chuàng)建一個(gè)小圖.
plt.subplot(224) plt.plot([0,1],[0,4]) plt.show() # 展示
不均勻畫圖
如果希望展示的小圖的大小不相同, 應(yīng)該怎么做呢? 以上面的4個(gè)小圖為例, 如果把第1個(gè)小圖放到第一行, 而剩下的3個(gè)小圖都放到第二行.
使用plt.subplot(2,1,1)將整個(gè)圖像窗口分為2行1列, 當(dāng)前位置為1. 使用plt.plot([0,1],[0,1])在第1個(gè)位置創(chuàng)建一個(gè)小圖.
plt.subplot(2,1,1) plt.plot([0,1],[0,1])
使用plt.subplot(2,3,4)將整個(gè)圖像窗口分為2行3列, 當(dāng)前位置為4. 使用plt.plot([0,1],[0,2])在第4個(gè)位置創(chuàng)建一個(gè)小圖.
plt.subplot(2,3,4) plt.plot([0,1],[0,2])
這里需要解釋一下為什么第4個(gè)位置放第2個(gè)小圖. 上一步中使用plt.subplot(2,1,1)將整個(gè)圖像窗口分為2行1列, 第1個(gè)小圖占用了第1個(gè)位置, 也就是整個(gè)第1行. 這一步中使用plt.subplot(2,3,4)將整個(gè)圖像窗口分為2行3列, 于是整個(gè)圖像窗口的第1行就變成了3列, 也就是成了3個(gè)位置, 于是第2行的第1個(gè)位置是整個(gè)圖像窗口的第4個(gè)位置.
使用plt.subplot(235)將整個(gè)圖像窗口分為2行3列,當(dāng)前位置為5. 使用plt.plot([0,1],[0,3])在第5個(gè)位置創(chuàng)建一個(gè)小圖. 同上, 再創(chuàng)建plt.subplot(236).
plt.subplot(235) plt.plot([0,1],[0,3]) plt.subplot(236) plt.plot([0,1],[0,4]) plt.show() # 展示
完整代碼
plt.figure() plt.subplot(2,1,1) plt.plot([0,1],[0,1]) plt.subplot(2,3,4) plt.plot([0,1],[0,2]) plt.subplot(235) plt.plot([0,1],[0,3]) plt.subplot(236) plt.plot([0,1],[0,4]) plt.show() # 展示
結(jié)果如下
看完了這篇文章,相信你對(duì)“python怎么實(shí)現(xiàn)在一個(gè)畫布上畫多個(gè)子圖”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。