在matplotlib中改变figure的布局和大小实例


Posted in Python onApril 23, 2020

以下来自Stack Overflow

在matplotlib中改变figure的布局和大小实例

在matplotlib中改变figure的布局和大小实例

从上面我们可以很清晰的看出应该如何使用matplotlib的figure方法。

补充知识:matplotlib 设置图形大小时 figsize 与 dpi 的关系

matplotlib 中设置图形大小的语句如下:

fig = plt.figure(figsize=(a, b), dpi=dpi)

其中:

figsize 设置图形的大小,a 为图形的宽, b 为图形的高,单位为英寸

dpi 为设置图形每英寸的点数

则此时图形的像素为:

px, py = a*dpi, b*dpi # pixels
# e.g.
# 6.4 inches * 100 dpi = 640 pixels

也就是说,同一像素尺寸的图形(比如 1200 * 600)可以有任意种不同的组合,比如:

figsize=(15,7.5), dpi= 80
figsize=(12,6) , dpi=100
figsize=( 8,4) , dpi=150
figsize=( 6,3) , dpi=200
etc.

但这些不同的组合,有什么区别呢?这取决于图中元素的大小。

线条,标记,文本等大多数元素都有以磅为单位的大小。Matplotlib 中 每英寸点数(ppi)为72,则宽度为 1 点的线将为 1/72 英寸宽,使用 fontsize 12 点的文本将是 12/72 寸高。

为了便于说明,用 matplotlib绘制相应的图形,如 表1 所示。

如果以英寸为单位更改图形大小,而 dpi 不变,较大的图形仍具有相同的元素大小。因此,改变图形尺寸就像拿一张不同尺寸的纸张一样,这样做当然不会改变用同一笔绘制的线条的宽度。通过表 1 中的图形2, 4, 6 的对比,可以明显的看出来这一点。

另一方面,更改dpi会缩放元素。在72 dpi时,1 宽度的线是 1 像素。在144 dpi时,这条线就是 2 像素。

span>因此,更大的dpi就像放大镜一样。所有元素都通过镜头的放大倍数进行缩放。 通过表 1 中的图形 1 3 5 的对比,可以看出这一点。

综上:

图形尺寸(figsize)确定图形的大小(以英寸为单位)。 这给出了轴(和其他元素)在图中的空间量。 较大的图形尺寸将允许显示更长的文本,更多的轴或更多的标记标签(表1中图形3与图形4,图形5与图形6的对比可看出,像素尺寸相同时,图形尺寸越大,所能容纳的内容越多)。

dpi 确定了图形每英寸包含的像素数,图形尺寸相同的情况下, dpi 越高,则图像的清晰度越高(表1中 1,3,5 对比可看出)

以上这篇在matplotlib中改变figure的布局和大小实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python里大整数相乘相关技巧指南
Sep 12 Python
Python部署web开发程序的几种方法
May 05 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
Oct 25 Python
python复制文件到指定目录的实例
Apr 27 Python
Python3实现汉语转换为汉语拼音
Jul 08 Python
在Django model中设置多个字段联合唯一约束的实例
Jul 17 Python
python多进程(加入进程池)操作常见案例
Oct 21 Python
python对验证码降噪的实现示例代码
Nov 12 Python
python 浅谈serial与stm32通信的编码问题
Dec 18 Python
Django框架models使用group by详解
Mar 11 Python
pycharm激活方法到2099年(激活流程)
Sep 22 Python
Django celery异步任务实现代码示例
Nov 26 Python
Python将二维列表list的数据输出(TXT,Excel)
Apr 23 #Python
Python基于DB-API操作MySQL数据库过程解析
Apr 23 #Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
Apr 23 #Python
Python matplotlib实时画图案例
Apr 23 #Python
windows下的pycharm安装及其设置中文菜单
Apr 23 #Python
使用python+poco+夜神模拟器进行自动化测试实例
Apr 23 #Python
PyCharm设置Ipython交互环境和宏快捷键进行数据分析图文详解
Apr 23 #Python
You might like
Joomla下利用configuration.php存储简单数据
2010/05/19 PHP
PHP跨时区(UTC时间)应用解决方案
2013/01/11 PHP
jQuery 1.0.4 - New Wave Javascript(js源文件)
2007/01/15 Javascript
兼容多浏览器的iframe自适应高度(ie8 、谷歌浏览器4.0和 firefox3.5.3)
2009/11/04 Javascript
JavaScript中匿名、命名函数的性能测试
2014/09/04 Javascript
jQuery Masonry瀑布流插件使用详解
2014/11/17 Javascript
jquery+ajax验证不通过也提交表单问题处理
2014/12/12 Javascript
jQuery实现悬浮在右上角的网页客服效果代码
2015/10/24 Javascript
JS实现支持Ajax验证的表单插件
2016/03/24 Javascript
轻松掌握JavaScript状态模式
2016/09/07 Javascript
javascript容错处理代码(屏蔽js错误)
2017/01/20 Javascript
OkHttp踩坑随笔为何 response.body().string() 只能调用一次
2018/01/08 Javascript
详解Webpack + ES6 最新环境搭建与配置
2018/06/04 Javascript
Vue触发式全局组件构建的方法
2018/11/28 Javascript
JavaScript模板引擎原理与用法详解
2018/12/24 Javascript
react写一个select组件的实现代码
2019/04/03 Javascript
vue数据更新UI不刷新显示的解决办法
2020/08/06 Javascript
[00:43]FTP典藏礼包 DOTA2三大英雄霸气新套装
2014/03/21 DOTA
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
python基于phantomjs实现导入图片
2016/05/13 Python
Django在win10下的安装并创建工程
2017/11/20 Python
vscode 远程调试python的方法
2017/12/01 Python
python 显示数组全部元素的方法
2018/04/19 Python
Django之模型层多表操作的实现
2019/01/08 Python
python实现屏保程序(适用于背单词)
2019/07/30 Python
python爬虫 爬取超清壁纸代码实例
2019/08/16 Python
Python求平面内点到直线距离的实现
2020/01/19 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的方法
2014/04/03 HTML / CSS
Html5中localStorage存储JSON数据并读取JSON数据的实现方法
2017/02/13 HTML / CSS
Booking.com德国:预订最好的酒店和住宿
2020/02/16 全球购物
物业管理员岗位职责范文
2013/11/25 职场文书
2015年公司后勤管理工作总结
2015/05/13 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
超市店长竞聘书
2015/09/15 职场文书
python字典的元素访问实例详解
2021/07/21 Python