最近,我决定从 MATLAB 移植到 Matplotlib 来绘制图形。在 MATLAB 中,我要做的就是转到“文件”>“导出”>“渲染”,然后选择 600 dpi,然后选择“应用到图形”,然后导出。在 Matplotlib 中,我使用 matplotlib 库中的命令 savefig 作为
matplotlib.pyplot.savefig(fname, dpi=None, facecolor='w', edgecolor='w',
orientation='portrait', papertype=None, format=None,
transparent=False, bbox_inches=None, pad_inches=0.1,
frameon=None).
Run Code Online (Sandbox Code Playgroud)
然后我将 dpi 设置为 600,并将 .tiff 设置为输出格式。除了文件非常大 ~ 32 mb 之外,效果很好。显然,我不能在期刊手稿中使用这么大的文件。我想知道是否有一种方法可以将压缩合并到文件中,以便在不损失分辨率的情况下获得较小尺寸的图像文件。
cch*_*ala 11
从matplotlib版本 3.1.0 开始,现在可以在通过 kwarg 保存图形时直接将参数传递给 PILpil_kwarg:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
fig.savefig('/tmp/foo.tiff', dpi=600, format="tiff", pil_kwargs={"compression": "tiff_lzw"})
Run Code Online (Sandbox Code Playgroud)
但要小心拼写错误,因为savefig似乎默默地吞下了不受支持的 kwargs,例如pil_kwargssss......
此 PR中介绍了该功能,该 PR 取代了Ignacio Vergara Kausel 在其回复中链接的 PR。
| 归档时间: |
|
| 查看次数: |
6686 次 |
| 最近记录: |