【发布时间】:2016-11-01 13:56:23
【问题描述】:
我有一个需要保存为png 的二维数组。我还需要为图像添加一个文本标签。到目前为止,我已经尝试了两种方法,没有一种是最佳的:
-
我使用
matplotlib.image模块将数组直接保存为图片:matplotlib.image.imsave(FILENAME, ARRAY, cmap=plt.cm.binary)但是我无法使用该命令添加文本。我可以在保存原始图像后使用
PIL进行读取和编辑,但是在大型数据集上的 I/O 成本将是不可接受的。 -
我使用
pyplot接口将数组转换为图形,然后添加图例。但是,当我将其保存为文件时,会出现不必要的空格。我试过关闭轴,将填充设置为 0 等,但总是有一些空白边距我无法摆脱:import matplotlib.pyplot as plt plt.imshow(ARRAY, cmap=plt.cm.binary) plt.axis('off') plt.savefig(FILENAME, dpi=100, pad_inches=0.0, bbox_inches='tight')
有没有办法从二维数组生成图像、覆盖文本并快速保存为 .png 而没有空格?最好是使用 matplotlib/PIL 的解决方案,但如果有什么更好的,我可以研究一下。
【问题讨论】:
标签: python image matplotlib