下面是运行良好的代码:
TempImage = "image.png"
SaveImage = "image.bmp"
plt.savefig(TempImage, format = "png")
img = Image.open(TempImage)
img.save(SaveImage)
os.remove(TempImage)
我正在寻找一个选项来保存matplotlib绘图到图像,但需要bmp格式。因为没有解决方案,所以我找到了这个。但它创建了额外的png文件达特我必须删除,因为它对我没有用,可能会获得磁盘空间。
所以我在寻找一个解决方案,将避免保存png文件,并直接将绘图转换为bmp文件格式。
请让我知道我能做些什么来实现它。
1条答案
按热度按时间czq61nw11#
如果你真的想避免使用PNG,你可以使用原始的RGBA缓冲区,这样做的优点是比使用PNG文件要快一些。
它稍微复杂一些,但下面的内容对我很有效:
我需要注意的是,因为BMP文件没有经过压缩,所以生成的文件非常大。所以即使生成了中间的PNG,也不太可能对磁盘的使用产生很大的影响。例如,上面的代码生成了1,228,854字节的BMP和7,927字节的PNG,所以PNG占用了0.6%的存储空间。