python实现在一个画布上画多个子图


Posted in Python onJanuary 19, 2020

matplotlib 是可以组合许多的小图, 放在一张大图里面显示的. 使用到的方法叫作 subplot.

均匀画图

使用import导入matplotlib.pyplot模块, 并简写成plt. 使用plt.figure创建一个图像窗口.

import matplotlib.pyplot as plt
 
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() # 展示

python实现在一个画布上画多个子图

不均匀画图

如果希望展示的小图的大小不相同, 应该怎么做呢? 以上面的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实现在一个画布上画多个子图

以上这篇python实现在一个画布上画多个子图就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python set集合类型操作总结
Nov 07 Python
Python实现简单拆分PDF文件的方法
Jul 30 Python
在windows系统中实现python3安装lxml
Mar 23 Python
Windows中安装使用Virtualenv来创建独立Python环境
May 31 Python
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
Jul 02 Python
python中json格式数据输出的简单实现方法
Oct 31 Python
python树莓派红外反射传感器
Jan 21 Python
python中的数据结构比较
May 13 Python
keras模型保存为tensorflow的二进制模型方式
May 25 Python
Python图像处理之膨胀与腐蚀的操作
Feb 07 Python
python实现web邮箱扫描的示例(附源码)
Mar 30 Python
对PyTorch中inplace字段的全面理解
May 22 Python
python构造函数init实例方法解析
Jan 19 #Python
python matplotlib画盒图、子图解决坐标轴标签重叠的问题
Jan 19 #Python
python matplotlib中的subplot函数使用详解
Jan 19 #Python
Python中的 ansible 动态Inventory 脚本
Jan 19 #Python
Python实现序列化及csv文件读取
Jan 19 #Python
使用python turtle画高达
Jan 19 #Python
ansible动态Inventory主机清单配置遇到的坑
Jan 19 #Python
You might like
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
用Flash图形化数据(二)
2006/10/09 PHP
网站当前的在线人数
2006/10/09 PHP
PHP自动生成后台导航网址的最佳方法
2013/08/27 PHP
php+mysql开发中的经验与常识小结
2019/03/25 PHP
PHP+redis实现微博的拉模型案例详解
2019/07/10 PHP
laravel5.5添加echarts实现画图功能的方法
2019/10/09 PHP
常用参考资料(手册)下载或者链接
2006/07/22 Javascript
javascript 必知必会之closure
2009/09/21 Javascript
js下用gb2312编码解码实现方法
2009/12/31 Javascript
基于JQuery的Pager分页器实现代码
2010/07/17 Javascript
js 动态文字滚动的例子
2011/01/17 Javascript
JS关闭窗口与JS关闭页面的几种方法小结
2013/12/17 Javascript
JS图片无缝、平滑滚动代码
2014/03/11 Javascript
jQuery中delegate()方法用法实例
2015/01/19 Javascript
bootstrap快速制作后台界面
2016/12/05 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
关于js的三种使用方式(行内js、内部js、外部js)的程序代码
2018/05/05 Javascript
解决vue热替换失效的根本原因
2018/09/19 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
Python实现读取文件最后n行的方法
2017/02/23 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
keras:model.compile损失函数的用法
2020/07/01 Python
常用的10个Python实用小技巧
2020/08/10 Python
Python + opencv对拍照得到的图片进行背景去除的实现方法
2020/11/18 Python
英国豪华针织品牌John Smedley的在线销售商:The Outlet by John Smedley
2018/04/08 全球购物
自考毕业生自我鉴定
2013/11/04 职场文书
高三历史教学反思
2014/01/09 职场文书
给老婆的搞笑检讨书
2014/01/12 职场文书
不错的求职信范文
2014/07/20 职场文书
党员对照检查材料思想汇报(党的群众路线)
2014/09/24 职场文书
党的群众路线教育实践活动个人对照检查材料(教师)
2014/11/04 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
laravel添加角色和模糊搜索功能的实现代码
2021/06/22 PHP
Spring Boot mybatis-config 和 log4j 输出sql 日志的方式
2021/07/26 Java/Android