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在校内发人人网状态(人人网看状态)
Feb 19 Python
遍历python字典几种方法总结(推荐)
Sep 11 Python
一个基于flask的web应用诞生 flask和mysql相连(4)
Apr 11 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
Apr 18 Python
python 绘制正态曲线的示例
Sep 24 Python
Python使用windows设置定时执行脚本
Nov 12 Python
Python Process创建进程的2种方法详解
Jan 25 Python
浅析Python模块之间的相互引用问题
Feb 26 Python
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
Apr 06 Python
Python实战之实现简易的学生选课系统
May 25 Python
详解PyTorch模型保存与加载
Apr 28 Python
Python使用plt.boxplot()函数绘制箱图、常用方法以及含义详解
Aug 14 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语法(4)
2006/10/09 PHP
php采集时被封ip的解决方法
2010/08/29 PHP
php 实现进制相互转换
2016/04/07 PHP
给Function做的OOP扩展
2009/05/07 Javascript
js 禁用只读文本框获得焦点时的退格键
2010/04/25 Javascript
js 通过cookie实现刷新不变化树形菜单
2014/10/30 Javascript
js/jquery判断浏览器类型的方法小结
2015/05/12 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
浅谈$_FILES数组为空的原因
2017/02/16 Javascript
浅谈angularjs中响应回车事件
2017/04/24 Javascript
js调用刷新界面的几种方式
2017/05/03 Javascript
bootstrap响应式表格实例详解
2017/05/15 Javascript
JavaScript正则表达式的贪婪匹配和非贪婪匹配
2017/09/05 Javascript
BootStrap模态框不垂直居中的解决方法
2017/10/19 Javascript
详解Immutable及 React 中实践
2018/03/01 Javascript
浅谈Vue内置component组件的应用场景
2018/03/27 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
2018/09/29 Javascript
关于ligerui子页面关闭后,父页面刷新,重新加载的方法
2019/09/27 Javascript
Vue v-bind动态绑定class实例方法
2020/01/15 Javascript
jquery实现淡入淡出轮播图效果
2020/12/13 jQuery
[37:37]DAC2018 4.4 淘汰赛 Optic vs Mineski 第二场
2018/04/05 DOTA
python更新列表的方法
2015/07/28 Python
Python实现多并发访问网站功能示例
2017/06/19 Python
python: 自动安装缺失库文件的方法
2018/10/22 Python
解决Python设置函数调用超时,进程卡住的问题
2019/08/08 Python
浅析python中的del用法
2020/09/02 Python
Python监听键盘和鼠标事件的示例代码
2020/11/18 Python
梅西酒窖:Macy’s Wine Cellar
2018/01/07 全球购物
Shopee新加坡:东南亚与台湾电商平台
2019/01/25 全球购物
New Balance法国官方网站:购买鞋子和服装
2019/09/01 全球购物
导游的职业规划书范文
2013/12/27 职场文书
导航工程专业自荐信
2014/09/02 职场文书
乡镇党委书记第三阶段个人整改措施
2014/09/16 职场文书
简历自荐信范文
2015/03/09 职场文书
单身证明范本
2015/06/15 职场文书
详解python的异常捕获
2022/03/03 Python