如何将Bokeh图形导出为SVG或PDF?
有没有办法把Bokeh中的单个图形输出成pdf或svg格式的图片?我觉得我可能漏掉了什么明显的东西,但我查了在线帮助页面,也看过bokeh.objects
的API,还是没找到相关的信息...
4 个回答
0
现在是2022年了,但直接把图片导出为PDF的功能还没有。不过,有一种替代的方法也能达到同样的效果。
首先,正如其他回答提到的,把后端设置为'svg'。plot.output_backend = "svg"
,然后把图片保存为svg文件。不要保存为html文件,因为这样可能会在实际图片周围多出一些空白。接着,你可以使用任何在线的svg转pdf工具,把svg文件转换成pdf格式。
0
看起来因为bokeh使用的是html5画布作为后台,所以它会把内容写到静态的html页面上。你可以随时把这些html文件导出成pdf格式。
2
与此同时……在我们获得原生支持之前,你可以使用phantom.js将HTML输出转换成PDF文件。我们在示例测试目录中使用它,将生成的HTML图表转换成PNG图片,但你也可以得到PDF格式的图片:
更多信息可以在这里找到:
8
目前还不能保存PDF文件,但从Bokeh 0.12.6
版本开始,你可以直接从Python代码导出PNG和SVG格式的文件。
导出PNG文件的代码看起来是这样的:
export_png(plot, filename="plot.png")
而导出SVG文件的代码则是这样的:
plot.output_backend = "svg"
export_svgs(plot, filename="plot.svg")
需要安装一些可选的依赖项。你可以在用户指南的导出图表部分找到更多信息。