python实现在一个画布上画多个子图
matplotlib是可以组合许多的小图,放在一张大图里面显示的.使用到的方法叫作subplot.
均匀画图
使用import导入matplotlib.pyplot模块,并简写成plt.使用plt.figure创建一个图像窗口.
importmatplotlib.pyplotasplt plt.figure()
使用plt.subplot来创建小图.plt.subplot(2,2,1)表示将整个图像窗口分为2行2列,当前位置为1.使用plt.plot([0,1],[0,1])在第1个位置创建一个小图.
plt.subplot(2,2,1) plt.plot([0,1],[0,1])
plt.subplot(2,2,2)表示将整个图像窗口分为2行2列,当前位置为2.使用plt.plot([0,1],[0,2])在第2个位置创建一个小图.
plt.subplot(2,2,2) plt.plot([0,1],[0,2])
plt.subplot(2,2,3)表示将整个图像窗口分为2行2列,当前位置为3.plt.subplot(2,2,3)可以简写成plt.subplot(223),matplotlib同样可以识别.使用plt.plot([0,1],[0,3])在第3个位置创建一个小图.
plt.subplot(223) plt.plot([0,1],[0,3])
plt.subplot(224)表示将整个图像窗口分为2行2列,当前位置为4.使用plt.plot([0,1],[0,4])在第4个位置创建一个小图.
plt.subplot(224) plt.plot([0,1],[0,4]) plt.show()#展示
不均匀画图
如果希望展示的小图的大小不相同,应该怎么做呢?以上面的4个小图为例,如果把第1个小图放到第一行,而剩下的3个小图都放到第二行.
使用plt.subplot(2,1,1)将整个图像窗口分为2行1列,当前位置为1.使用plt.plot([0,1],[0,1])在第1个位置创建一个小图.
plt.subplot(2,1,1) plt.plot([0,1],[0,1])
使用plt.subplot(2,3,4)将整个图像窗口分为2行3列,当前位置为4.使用plt.plot([0,1],[0,2])在第4个位置创建一个小图.
plt.subplot(2,3,4) plt.plot([0,1],[0,2])
这里需要解释一下为什么第4个位置放第2个小图.上一步中使用plt.subplot(2,1,1)将整个图像窗口分为2行1列,第1个小图占用了第1个位置,也就是整个第1行.这一步中使用plt.subplot(2,3,4)将整个图像窗口分为2行3列,于是整个图像窗口的第1行就变成了3列,也就是成了3个位置,于是第2行的第1个位置是整个图像窗口的第4个位置.
使用plt.subplot(235)将整个图像窗口分为2行3列,当前位置为5.使用plt.plot([0,1],[0,3])在第5个位置创建一个小图.同上,再创建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()#展示
结果如下
以上这篇python实现在一个画布上画多个子图就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。