如何使用 Python Pillow 在不创建中间文件的情况下显示 Matplotlib 图片?
python pillow:不保存中间文件就显示 matplotlib 图片
在生成 matplotlib 图片时,通常需要先将其保存到中间文件中,然后再使用 pillow 显示。然而,有时我们希望避免创建不必要的中间文件。
问题:
如何使用 python pillow 显示 matplotlib 生成的图片,而不生成中间文件?
答案:
可以使用 byteio 模拟文件对象,来替代中间文件。byteio 在内存中创建一个可读写的字节缓冲区,这可以作为文件对象使用。
代码示例:
import matplotlib.pyplot as plt from io import BytesIO from PIL import Image # 生成 Matplotlib 图片 plt.plot([1, 2, 3], [4, 5, 6]) # 使用 ByteIO 模拟文件对象 output = BytesIO() # 将 Matplotlib 图片保存到 ByteIO 对象 plt.savefig(output, format='png') # 将 ByteIO 对象作为文件对象传给 Pillow image = Image.open(output) # 显示图片 image.show()
通过这种方法,可以避免创建中间文件,直接在内存中创建、展示图片。
以上就是如何使用 Python Pillow 在不创建中间文件的情况下显示 Matplotlib 图片?的详细内容,更多请关注其它相关文章!