开发者

Python保存图片的3种情况代码实例

开发者 https://www.devze.com 2023-11-09 12:08 出处:网络 作者: 蜡笔大新home
目录1、保存单张图片2、创建文件夹并保存单张图片3、创建文件夹并保存多张图片附:python解决使用 plt.savefig 保存图片时一片空白问题原因解决总结 1、保存单张图片
目录
  • 1、保存单张图片
  • 2、创建文件夹并保存单张图片
  • 3、创建文件夹并保存多张图片
  • 附:python解决使用 plt.savefig 保存图片时一片空白
    • 问题
    • 原因
    • 解决
  • 总结 

    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,php1,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解js决使用 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)

    总结 

    到此这篇关于Pytho编程n保存图片的3种情况的文章就介绍到这了,更多相关Python保存图片内容请搜索编程客栈(www.devze.com)以前的文章或继www.devze.com续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号