第一步 7: 显示和导出#

之前的入门指南中,您创建、定制并组合了可视化效果。

在本节中,您将使用各种方法来显示和导出您的可视化图表。

创建一个独立的HTML文件#

到目前为止,所有示例都使用了show()函数将您的可视化保存到HTML文件中。此HTML文件包含显示您的图表所需的所有信息。

要自定义Bokeh为您的可视化创建的文件,导入并调用 output_file() 函数。output_file() 接受各种与文件相关的 参数。例如:

  • filename: HTML文件的文件名

  • title: 您文档的标题(将用于HTML的标签)

如果您不使用output_file()函数来定义自定义文件名, Bokeh默认使用当前运行的Python脚本的文件名作为HTML输出的文件名。如果脚本文件名不可用(例如,在Jupyter笔记本中),则Bokeh将生成一个随机文件名。

当你调用show()函数时,Bokeh会创建HTML文件。此函数还会自动打开一个网页浏览器来显示HTML文件。

如果你希望Bokeh只生成文件而不在网页浏览器中打开它,请使用save()函数代替。

在使用之前,您需要导入save()output_file()函数,就像您对show()所做的那样。

from bokeh.plotting import figure, output_file, save

# prepare some data
x = [1, 2, 3, 4, 5]
y = [4, 5, 5, 7, 2]

# set output to static HTML file
output_file(filename="custom_filename.html", title="Static HTML file")

# create a new plot with a specific size
p = figure(sizing_mode="stretch_width", max_width=500, height=250)

# add a scatter renderer
p.scatter(x, y, fill_color="red", size=15)

# save the results to a file
save(p)

另请参阅

有关在线嵌入Bokeh可视化的更多信息,请参阅用户指南中的 网页

注意

默认情况下,Bokeh生成的HTML文件包含一个标准版本的BokehJS,它会自动从Bokeh的服务器下载。使用output_file()函数的mode参数可以改变这种行为。更多信息,请参阅参考指南中的output_file()Resources

在Jupyter笔记本中显示#

如果您使用Jupyter笔记本,请在代码中调用Bokeh的output_notebook()函数。然后,使用show()函数直接在笔记本中显示您的可视化:

Jupyter笔记本中的Bokeh图表截图

另请参阅

有关使用Jupyter笔记本的更多信息,请参阅用户指南中的 Jupyter

直接与实时教程笔记本互动,这些笔记本由MyBinder在线托管。

导出PNG文件#

要导出PNG或SVG文件,您可能需要安装额外的依赖项。

为了创建PNG和SVG文件,Bokeh使用 Selenium。Selenium允许Bokeh在 没有图形用户界面的浏览器中运行。Bokeh使用这个 浏览器来渲染PNG或SVG文件。为了使这能够正常工作,Selenium 需要能够访问Firefox浏览器(通过geckodriver 包)或Chrome/Chromium浏览器(通过chromedriver包)。

使用此命令在conda环境中安装带有geckodriver和Firefox的Selenium:

conda install selenium geckodriver firefox -c conda-forge

请参阅附加依赖项以获取更多安装所需包的选项。

一旦安装了需求,你可以使用 export_png() 函数将你的图表导出为PNG文件:

from bokeh.io import export_png
from bokeh.plotting import figure

# prepare some data
x = [1, 2, 3, 4, 5]
y = [4, 5, 5, 7, 2]

# create a new plot with fixed dimensions
p = figure(width=350, height=250)

# add a scatter renderer
p.scatter(x, y, fill_color="red", size=15)

# save the results to a file
export_png(p, filename="plot.png")

另请参阅

有关如何导出PNG和SVG文件的信息,请参阅用户指南中的 PNG和SVG导出