Python保存图片的3种情况代码实例
作者:蜡笔大新home
这篇文章主要给大家介绍了关于Python保存图片的3种情况,在Python中我们可以使用多种方法来保存图片,包括使用Python内置的库和第三方库,需要的朋友可以参考下
1、保存单张图片
#基本存储 import matplotlib.pyplot as plt x=[0,1,2,3,4,5] y=[0,2,4,6,8,10] plt.plot(x,y)#绘制图片 plt.savefig( './result/exam_01.png') #将图片存储在result文件夹下并命名为exam_01.png ,注意该行代码要放在plt.show()前 plt.show()
2、创建文件夹并保存单张图片
#存储图片同一个文件夹中
import matplotlib.pyplot as plt
import os#导入OS模块,用于创建文件夹
x=[0,1,2,3,4,5]
y=[0,2,4,6,8,10]
plt.plot(x,y)
# 指定图片保存路径
figure_save_path = "picture_folder"
if not os.path.exists(figure_save_path):
    os.makedirs(figure_save_path) # 如果不存在目录figure_save_path,则创建
    
plt.savefig(os.path.join(figure_save_path , 'exam_02.png'))#第一个是指存储路径,第二个是图片名字
plt.show()3、创建文件夹并保存多张图片
#批量绘制图片+批量存储
import matplotlib.pyplot as plt
import os
for i in range(0,3,1):
    x=[i,1,2,3,4,5]
    y=[0,2,4,6,8,10]
    name_list=["one","two","three"]#先创建名字列表,可以是用在图片命名,也可以用在文件夹命名
    plt.plot(x,y)
    # 指定图片保存路径
    figure_save_path = "picture_folder_many"#这里创建了一个文件夹,如果依次创建不同文件夹,可以用name_list[i]
    if not os.path.exists(figure_save_path):
        os.makedirs(figure_save_path) # 如果不存在目录figure_save_path,则创建
    plt.savefig(os.path.join(figure_save_path , name_list[i]))#分别命名图片
    plt.show()附:Python解决使用 plt.savefig 保存图片时一片空白
问题
当使用如下代码保存使用 plt.savefig 保存生成的图片时,结果打开生成的图片却是一片空白。
import matplotlib.pyplot as plt
""" 一些画图代码 """
plt.show()
plt.savefig("filename.png")原因
其实产生这个现象的原因很简单:在 plt.show() 后调用了 plt.savefig() ,在 plt.show() 后实际上已经创建了一个新的空白的图片(坐标轴),这时候你再 plt.savefig() 就会保存这个新生成的空白图片。
解决
知道了原因,就不难知道解决办法了,解决办法有两种:
在
plt.show()之前调用plt.savefig();import matplotlib.pyplot as plt """ 一些画图代码 """ plt.savefig("filename.png") plt.show()画图的时候获取当前图像(这一点非常类似于 Matlab 的句柄的概念):
# gcf: Get Current Figure fig = plt.gcf() plt.show() fig1.savefig('tessstttyyy.png', dpi=100)
总结
到此这篇关于Python保存图片的3种情况的文章就介绍到这了,更多相关Python保存图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
