在png中以300作为dpi保存多个网格数字时,我会失去质量
但是,将图形另存为pdf时不会发生此错误。
以下是保存生成图像的代码的一小部分:
fig.savefig(filepath, format = 'pdf'
,bbox_inches='tight',dpi=300)
fig.savefig(filepath, format = 'png'
,bbox_inches='tight',dpi=300)
有没有办法在不必使用pdf的情况下获得上述图像的良好分辨率png?
答案 0 :(得分:5)
.pdf
图像是矢量图形,因此保留所有信息。换句话说,在pdf创建中设置dpi=300
并不做任何事情(除非您使用rasterized = True
设置了特定对象以进行栅格化。)
.png
图像是光栅图形(例如check this out)。因此,您必须调整dpi
以获得所需的文件大小与质量的平衡。换句话说,图片 正确保存,它的质量低于完美的图像。 PDF。
图像输出格式的选择取决于您将如何使用它。如果您想要完美缩放(缩放)的简单绘图,矢量图形(.pdf
,.svg
)非常棒。但是,如果要绘制多个点(> 10,000左右),这可能会导致非常大的文件大小。在这种情况下,栅格化图形可能更好,因为一个人无论如何都看不到很多数据点。
"您应该使用哪种 raster 格式?" .png
和.jpg
是最常见的。前者对具有相同颜色的大块的图像具有更好的压缩,而后者对于高像素可变性(例如照片)具有更好的压缩。 Check this out for more info.
请注意,虽然.png
被视为无损'但它只是在保留光栅化信息的意义上。保存/转换为栅格化格式时,信息仍然丢失。