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中关于字符串对象的一些基础知识
Apr 08 Python
Python实现的Excel文件读写类
Jul 30 Python
python+matplotlib实现礼盒柱状图实例代码
Jan 16 Python
Python对数据进行插值和下采样的方法
Jul 03 Python
使用PyCharm创建Django项目及基本配置详解
Oct 24 Python
在PyCharm中控制台输出日志分层级分颜色显示的方法
Jul 11 Python
python 定义类时,实现内部方法的互相调用
Dec 25 Python
python通过文本在一个图中画多条线的实例
Feb 21 Python
django queryset相加和筛选教程
May 18 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
Nov 20 Python
python 基于UDP协议套接字通信的实现
Jan 22 Python
详解Python+OpenCV绘制灰度直方图
Mar 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
PHP面向对象详解(三)
2015/12/07 PHP
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
jquery验证手机号码、邮箱格式是否正确示例代码
2013/07/28 Javascript
Js保留小数点的4种效果实现代码分享
2014/04/12 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
2014/08/27 Javascript
使用Nodejs开发微信公众号后台服务实例
2014/09/03 NodeJs
js Calender控件使用详解
2015/01/05 Javascript
javascript实现随时变化着的背景颜色
2015/04/02 Javascript
javascript使用shift+click实现选择和反选checkbox的方法
2015/05/04 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
Bootstrap和Java分页实例第二篇
2016/12/23 Javascript
jQuery实现鼠标滑过预览图片大图效果的方法
2017/04/26 jQuery
vue学习笔记之指令v-text && v-html && v-bind详解
2017/05/12 Javascript
vue实现word,pdf文件的导出功能
2018/07/31 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
Vue.js组件使用props传递数据的方法
2019/10/19 Javascript
js代码实现轮播图
2020/05/04 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
vue 实现tab切换保持数据状态
2020/07/21 Javascript
[01:09:01]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第一场 10.28
2020/10/28 DOTA
Python subprocess模块学习总结
2014/03/13 Python
Python中的map、reduce和filter浅析
2014/04/26 Python
使用70行Python代码实现一个递归下降解析器的教程
2015/04/17 Python
研究Python的ORM框架中的SQLAlchemy库的映射关系
2015/04/25 Python
详解在Python程序中使用Cookie的教程
2015/04/30 Python
使用python绘制常用的图表
2016/08/27 Python
python删除过期log文件操作实例解析
2018/01/31 Python
django2用iframe标签完成网页内嵌播放b站视频功能
2018/06/20 Python
python实现操作文件(文件夹)
2019/10/31 Python
pycharm显示远程图片的实现
2019/11/04 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
Python内置函数及功能简介汇总
2020/10/13 Python
手工制作的意大利太阳镜和光学元件:Illesteva
2019/01/19 全球购物
Moss Bros官网:英国排名第一的西装店
2020/02/26 全球购物
初中数学教学反思范文
2016/02/17 职场文书
Android自定义scrollview实现回弹效果
2022/04/01 Java/Android