【Python】解决使用 plt.savefig 保存图片时一片空白

更新

这里我会列出对本文的更新。

  • 2017 年 9 月 28 日:修正几处错字,优化排版。

问题

当使用如下代码保存使用 plt.savefig 保存生成的图片时,结果打开生成的图片却是一片空白。

import matplotlib.pyplot as plt

""" 一些画图代码 """

plt.show()
plt.savefig("filename.png")

原因

其实产生这个现象的原因很简单:在 plt.show() 后调用了 plt.savefig() ,在 plt.show() 后实际上已经创建了一个新的空白的图片(坐标轴),这时候你再 plt.savefig() 就会保存这个新生成的空白图片。

解决

知道了原因,就不难知道解决办法了,解决办法有两种:

  1. plt.show() 之前调用 plt.savefig(); import matplotlib.pyplot as plt """ 一些画图代码 """ plt.savefig("filename.png") plt.show()
  2. 画图的时候获取当前图像(这一点非常类似于 Matlab 的句柄的概念):
    # gcf: Get Current Figure
    fig = plt.gcf()
    plt.show()
    fig1.savefig('tessstttyyy.png', dpi=100)

END

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏V站

php7高效生成二维码:composer和荷兰PHP开发者的QrCode

关于QrCode这个类库没必要详细介绍,基于php的GD库,用于生成任意尺寸的二维码,并且可以将logo水印也打上去,还可以在二维码图片下方加入文字。QrCod...

3014
来自专栏生信宝典

CIRCOS圈图绘制 - 最简单绘图和解释

Circos是绘制圈图的神器,在http://circos.ca/images/页面有很多CIRCOS可视化的示例。 ? ? Circos可以在线使用,在线使用...

8669
来自专栏游戏杂谈

bat调用TexturePacker更新SpriteSheet

一款游戏会用到很多图片资源,通常我们会使用TexturePacker工具进行图片的拼接、压缩,为了考虑性能问题,单个SpriteSheet的尺寸不会设置的太大...

893
来自专栏跟着阿笨一起玩NET

Win7无法设置背景图片的快速解决办法

不知道怎么回事,win7电脑突然连个性化设置背景图片的按钮都没了。真操蛋~~~满屏的黑色背景图案,看着实在是不爽。

1351
来自专栏pangguoming

Angular2 -- 生命周期钩子

指令和组件的实例有一个生命周期:新建、更新和销毁。 每个接口都有唯一的一个钩子方法,它们的名字是由接口名加上 ng前缀构成的。比如,OnInit接口的钩子方法...

922
来自专栏ccylovehs

JavaScript防抖节流函数

防止一个事件频繁触发回调函数的方式: 防抖动:将几次操作合并为一此操作进行。原理是维护一个计时器,规定在delay时间后触发函数,但是在delay时间内再次触发...

962
来自专栏大内老A

Ajax请求过程中显示“进度”的简单实现

Ajax在Web应用中使用得越来越频繁。在进行Ajax调用过程中一般都具有这样的做法:显示一个GIF图片动画表明后台正在工作,同时阻止用户操作本页面(比如Aja...

2058
来自专栏后端技术探索

2分钟夜读学习:设置图片加载失败时的默认图片

通过程序执行就行呗,程序有时候可能考虑不到这个问题,每次去判断图片是否存在也太麻烦了。最简单的就是通过图片配置实现。

804
来自专栏数据小魔方

动态图表7|组合框(index函数)

今天跟大家分享动态图表7——组合框(index函数)! 组合框制作图表,其步骤与列表框相同,唯一的不同点在于,组合框控件,提供用于选择的下拉菜单,在未选择的情况...

3234
来自专栏逸鹏说道

样式问题-如何一次性设置网站英文字体样式,中文字体等样式

异常处理汇总-前端系列 http://www.cnblogs.com/dunitian/p/4523015.html 今天才发现,CSS 的 font-fami...

2806

扫码关注云+社区