微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Matplotlib保存图像不完整怎么办?Python绘图后图像不能完整保存如何解决

python第三方库matplotlib是能够来绘制各种不同图像的,而这些图像绘制完成之后除了可以用桌面窗口显示出来以外,还可以保存在指定文件路径。但是有些情况下保存的图片是不完整的,会少一点。那么下面这篇文章所要来介绍的就是matplotlib图像保存不完整解决方法,往下看看吧。

一、问题原因

那么在解决这个问题之前是需要来了解知道这个问题出现的原因,因为matplotlib绘制多个子图在同一画布上,是需要去调用方法来创建画布并指定其大小的。而一旦绘制出来的图像超过了这个大小,虽然在窗口输出显示时可以全部完整显示出来。但是保存图像时就只会保存固定画布大小的那一部分,多出来的部分也就是不会保存到。

二、解决方法

那么解决方法就是通过matplotlib库绘图保存方法savefig()来入手了,它里面有一个参数叫做bBox_inches,它的作用就是去更改边框英寸的缩放规则。那么只需要将这个参数的值设置为tight,就能够将画布上所有图像等比例缩小或放大到画布大小后再保存。

也就是让所有的图像刚好能够来填充整个画布,并且图像之间的距离也是会等比进行更改,不会出现放大或缩小后就让图像重叠在一起的情况。不过该方法会改变图像保存之后的尺寸,缩小时可能会降低清晰度,详细代码如下所示:

import matplotlib.pyplot as plt
fig, axes = plt.subplots(nrows=2, ncols=1, figsize=(12,6), tight_layout=True)
plt.savefig('test.png', dpi=600, bBox_inches='tight')

以上就是关于“Matplotlib保存图像不完整怎么办?Python绘图后图像不能完整保存如何解决”的全部内容了,希望对你有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐