📜  Bokeh-导出图

📅  最后修改于: 2020-11-09 05:16:33             🧑  作者: Mango


除了上述子命令外,还可以使用export()函数将散景图导出为PNG和SVG文件格式。为此,本地Python安装应具有以下依赖关系库。

幻影

PhantomJS是一个JavaScript API,可实现自动导航,屏幕截图,用户行为和断言。它用于运行基于浏览器的单元测试。 PhantomJS基于WebKit,为不同的浏览器提供了相似的浏览环境,并为各种Web标准提供了快速而原生的支持:DOM处理,CSS选择器,JSON,Canvas和SVG。换句话说,PhantomJS是没有图形用户界面的Web浏览器。

枕头

Pillow是Python映像库(以前称为PIL),是Python编程语言的免费库,它提供了对打开,操作和保存许多不同图像文件格式的支持。 (包括PPM,PNG,JPEG,GIF,TIFF和BMP。)其某些功能是按像素操作,遮罩和透明度处理,图像过滤,图像增强等。

export_png()函数从布局生成RGBA格式的PNG图像。此函数使用Webkit无头浏览器在内存中呈现布局,然后捕获屏幕截图。生成的图像将具有与源布局相同的尺寸。确保Plot.background_fill_color和Plot.border_fill_color是无属性。

from bokeh.io import export_png
export_png(plot, filename = "file.png")

HTML5 Canvas可能会使用可使用Adobe Illustrator等程序进行编辑的SVG元素来打印输出。 SVG对象也可以转换为PDF。在这里,使用JavaScript库canvas2svg来模拟普通的Canvas元素及其带有SVG元素的方法。与PNG一样,为了创建具有透明背景的SVG,Plot.background_fill_color和Plot.border_fill_color属性应设置为None。

首先,通过将Plot.output_backend属性设置为“ svg”来激活SVG后端。

plot.output_backend = "svg"

对于无头导出,Bokeh具有实用程序函数export_svgs()。此函数会将布局中的所有启用SVG的图下载为不同的SVG文件。

from bokeh.io import export_svgs
plot.output_backend = "svg"
export_svgs(plot, filename = "plot.svg")