Python Altair: 如何以更高的分辨率保存图表

5

有人知道如何使用Python Altair库将图形保存为png或svg时调整分辨率吗?

默认分辨率不足以满足我的需求。我已经在这里和Altair文档中搜索过,但找不到任何关于如何设置分辨率的信息。


1
如果您将图形保存为SVG格式,它将具有任意高的分辨率(因为它是矢量图形,而不是像素图形)。 - jakevdp
如果您绝对需要栅格图像,其中一个选项是使用 vl2png。例如,vl2png chart.json -s 2 chart.png 将在每个轴上以双倍分辨率输出。请参见此处。您可以在此处找到该工具。 - RobinL
2个回答

4
在Altair 2.1或更高版本中,chart.save()方法包括一个可选的scale_factor参数,可用于调整输出的大小/分辨率。
因此,要将其保存为具有两倍默认线性分辨率的PNG格式,您可以使用以下命令:
chart.save('mychart.png', scale_factor=2.0)

当您使用chart.to_json并通过vega embed进行渲染时,这是否也适用?有没有办法提高Web嵌入图表的分辨率? - Sachit Nagpal
3
不,这仅控制保存到文件的分辨率。对于实时渲染的图表,我相信分辨率将与您屏幕的分辨率相匹配。 - jakevdp

0
你可以使用每英寸像素数(ppi)参数如下: chart.save("保存路径", ppi=300) 这类似于matplotlib保存图形时的每英寸点数(dpi)参数。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接