【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 条评论
登录 后参与评论

相关文章

来自专栏AI研习社

Github 项目推荐 | 用 Pytorch 实现的 WaveNet-Vocoder

本库是用 Pytorch 实现的 WaveNet-Vocoder。 ? 安装需求: cuda 8.0 python 3.6 virtualenv 推荐使用内存大...

3597
来自专栏深度学习与计算机视觉

Windows系统配置TensorFlow教程

我为什么选择Windows系统: 其实我们没有必要过多纠结与到底使用Linux系统还是Windows系统来学习TensorFlow,因为不管是那个系统我们关...

2886
来自专栏ATYUN订阅号

小白也可以操作的手机TensorFlow教程:Android版和iOS版

TensorFlow通常用于训练海量数据,但新兴的智能手机市场也不可忽略。那些不能等待未来和love Machine Learning的人正在通过制造工具来突破...

3326
来自专栏ATYUN订阅号

适用于Windows 10的深度学习环境设置

本文详细介绍如何开始深度学习,首先在Windows 10上配置适合它的环境。要安装的框架是Keras API,后端为TensorFlow的GPU版本。

723
来自专栏用户2442861的专栏

Caffe学习系列(12):训练和测试自己的图片

学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中。因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试模型的整个...

661
来自专栏weixuqin 的专栏

深度学习之 TensorFlow(三):TensorFlow 源代码解析

1032
来自专栏weixuqin 的专栏

深度学习之 TensorFlow(三):TensorFlow 源代码解析

3786
来自专栏Hadoop实操

模型训练和部署-Iris数据集

在前面的文章Fayson介绍了关于《CDSW1.4的新功能》、《Hadoop之上的模型训练 - CDSW1.4新功能模块》、《CDSW1.4的Experimen...

662
来自专栏林欣哲

10分钟搞懂TensorBoard用法

基本用法 启动采集器,将运行session环境内的参数都保存到文件里,后续就可以用 with tf.Session() as sess: sess.run...

3576
来自专栏Deep learning进阶路

给python安装numpy+scipy+sklearn

Windows下安装scikit-learn 准备工作 ·        Python (>= 2.6 or >=3.3), ·        Numpy (>...

2350

扫码关注云+社区