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实现命令行版的火车票查看器
Aug 05 Python
Python selenium 三种等待方式解读
Sep 15 Python
详解Python3中字符串中的数字提取方法
Jan 14 Python
python实现简单遗传算法
Mar 19 Python
利用Python如何制作好玩的GIF动图详解
Jul 11 Python
Sanic框架路由用法实例分析
Jul 16 Python
pandas DataFrame 行列索引及值的获取的方法
Jul 02 Python
Python Web程序搭建简单的Web服务器
Jul 31 Python
Python3多线程版TCP端口扫描器
Aug 31 Python
Python笔记之观察者模式
Nov 20 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
Feb 06 Python
我对PyTorch dataloader里的shuffle=True的理解
May 20 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 OPCode缓存 APC详细介绍
2010/10/12 PHP
apache配置虚拟主机的方法详解
2013/06/17 PHP
php安装swoole扩展的方法
2015/03/19 PHP
php禁用函数设置及查看方法详解
2016/07/25 PHP
Yii 实现数据加密和解密
2021/03/09 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
读jQuery之八 包装事件对象
2011/06/21 Javascript
jquery简单瀑布流实现原理及ie8下测试代码
2013/01/23 Javascript
jquery无缝向上滚动实现代码
2013/03/29 Javascript
javascript:;与javascript:void(0)使用介绍
2013/06/05 Javascript
JavaScript避免内存泄露及内存管理技巧
2014/09/05 Javascript
在Javascript中处理数组之toSource()方法的使用
2015/06/09 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
js实现对ajax请求面向对象的封装
2016/01/08 Javascript
JavaScript+html5 canvas实现本地截图教程
2020/04/16 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
2016/06/13 Javascript
vue v-model表单控件绑定详解
2017/05/17 Javascript
jQuery发请求传输中文参数乱码问题的解决方案
2018/05/22 jQuery
vue+iview/elementUi实现城市多选
2019/03/28 Javascript
vue实现的请求服务器端API接口示例
2019/05/25 Javascript
利用百度echarts实现图表功能简单入门示例【附源码下载】
2019/06/10 Javascript
python中文分词,使用结巴分词对python进行分词(实例讲解)
2017/11/14 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
使用Python写一个小游戏
2018/04/02 Python
在Pycharm中将pyinstaller加入External Tools的方法
2019/01/16 Python
Python标准库shutil模块使用方法解析
2020/03/10 Python
Python3合并两个有序数组代码实例
2020/08/11 Python
详解HTML5中表单验证的8种方法介绍
2016/12/19 HTML / CSS
全球知名旅游社区法国站点:TripAdvisor法国
2016/08/03 全球购物
洛杉矶时尚女装系列:J.ING US
2019/03/17 全球购物
法制宣传日活动总结
2014/04/29 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
行政处罚告知书
2015/07/01 职场文书
详解MySQL数据库千万级数据查询和存储
2021/05/18 MySQL
keepalived + nginx 实现高可用方案
2022/12/24 Servers