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打开url并按指定块读取网页内容的方法
Apr 29 Python
python中的字典使用分享
Jul 31 Python
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
Jan 12 Python
ubuntu环境下python虚拟环境的安装过程
Jan 07 Python
Python装饰器模式定义与用法分析
Aug 06 Python
python 同时读取多个文件的例子
Jul 16 Python
Python装饰器用法与知识点小结
Mar 09 Python
python递归调用中的坑:打印有值, 返回却None
Mar 16 Python
浅谈Python中文件夹和python package包的区别
Jun 01 Python
python3处理word文档实例分析
Dec 01 Python
python基于tkinter实现gif录屏功能
May 19 Python
总结三种用 Python 作为小程序后端的方式
May 02 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
PHP 图像尺寸调整代码
2010/05/26 PHP
phpize的深入理解
2013/06/03 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
PHP输出缓存ob系列函数详解
2014/03/11 PHP
详解PHP导入导出CSV文件
2014/11/03 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
Phpstorm+Xdebug断点调试PHP的方法
2018/05/14 PHP
利用jQuery接受和处理xml数据的代码(.net)
2011/03/28 Javascript
js猜数字小游戏的简单实现代码
2013/07/02 Javascript
使用jQuery判断IE浏览器版本的代码
2014/06/14 Javascript
js propertychange和oninput事件
2014/09/28 Javascript
jquery使用each方法遍历json格式数据实例
2015/05/18 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
2015/08/06 Javascript
基于jQuery的AJAX和JSON实现纯html数据模板
2016/08/09 Javascript
jQuery 开发之EasyUI 添加数据的实例
2017/09/26 jQuery
js自定义input文件上传样式
2018/10/26 Javascript
es6 filter() 数组过滤方法总结
2019/04/03 Javascript
javascript设计模式之装饰者模式
2020/01/30 Javascript
javascript实现智能手环时间显示
2020/09/18 Javascript
[05:16]《大圣!大圣》——DOTA2新英雄齐天大圣配音李世宏老师专访
2016/12/13 DOTA
python运行时间的几种方法
2016/06/17 Python
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
对pandas的层次索引与取值的新方法详解
2018/11/06 Python
Python基础学习之类与实例基本用法与注意事项详解
2019/06/17 Python
python super的使用方法及实例详解
2019/09/25 Python
Tensorflow 多线程设置方式
2020/02/06 Python
详解查看Python解释器路径的两种方式
2020/10/15 Python
店长岗位职责
2013/11/21 职场文书
2014年内勤工作总结
2014/11/24 职场文书
工资证明范本
2015/06/12 职场文书
2015年城管执法工作总结
2015/07/23 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
2016简单的租房合同范本
2016/03/18 职场文书
爱岗敬业事迹材料
2019/06/20 职场文书
游戏《我的世界》澄清Xbox版暂无计划加入光追
2022/04/03 其他游戏
MyBatis核心源码深度剖析SQL语句执行过程
2022/05/20 Java/Android