plt.savefig 保存图片


画图占的内存很多,经常导致jupyter 卡顿,当图片超级多时,将图片复制到Excel里面也会导致Excel崩溃,因此需要我们将图片单独保存起来

import seaborn as sns
import matplotlib.pyplot as plt  
fig = plt.figure(figsize=[16,12])
for col,i in zip(col1,range(1,53)):
    sns.boxplot(data=data_iv,
            x='label',
            y=col)
    plt.title(col)
    f = plt.gcf() #获取当前图像 f.savefig(r'D:\{}.png'.format(col)) f.clear() #释放内存

注意plt.show() 和plt.savefig("filename.png") 的顺序

#得到的是一张空白的图片
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 2 * np.pi, 50)
y = np.sin(x)
plt.plot(x, y)
plt.show() plt.savefig("filename.png")

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

因此需要将plt.savefig()放在plt.show()之前,又或者是使用plt.gcf()固定图片,再保存

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM