Jupyter 和 Bokeh:将 Jupyter notebook 导出为 pdf 时导出散景图的解决方法
Jupyter and Bokeh: workaround for exporting bokeh plots when exporting Jupyter notebook to pdf
我希望一些重度 Jupyter 和 bokeh 用户可能有解决方法。所以我的 Jupyter 笔记本中有一堆 bokeh
图,我想将笔记本导出到 pdf
。在 Jupyter Notebook 文件菜单中,有一个选项可以将笔记本下载为 pdf
。另外——我的首选路线——是使用 nbconvert.
问题是 bokeh
图没有导出到最终的 pdf
文件中。 Bokeh
没有将其图导出到Latex
捕获的一种格式,用于编译 pdf。相反,像 matplotlib
这样的包将为每个图生成 png 文件,然后将这些图链接到乳胶中以生成 pdf。
现在,当我导出笔记本时,所有文本都以 pdf 格式出现,但 none 的情节出现了。如果我导出到 html 文件,这些图就会出现——但如果我尝试打印文档,这些图当然会溢出页面。
有没有人为此找到合适的解决方法?与我一起工作的用户仍然希望能够打印文档并对其进行标记。
标准交互式散景图实际上是 JSON 的集合,以及 JavaScript 库 (BokehJS),它在浏览器中将 JSON 呈现为所需的图。由于 PDF 文档不执行 JavaScript,因此永远不可能以 PDF 形式嵌入标准散景图。
但是,Bokeh 还可以将绘图的静态版本导出为 PNG 或 SVG,它们可以嵌入到 PDF 中。请参阅用户指南中的 Exporting Plots 部分。您首先需要安装一些可选的依赖项(phantomJS、selenium 和 pillow),然后导出绘图将是这样的:
export_png(plot, filename="plot.png")
然后,特别是在笔记本中,您可以内联显示图像,例如:
from IPython.display import Image
Image('plot.png')
我希望一些重度 Jupyter 和 bokeh 用户可能有解决方法。所以我的 Jupyter 笔记本中有一堆 bokeh
图,我想将笔记本导出到 pdf
。在 Jupyter Notebook 文件菜单中,有一个选项可以将笔记本下载为 pdf
。另外——我的首选路线——是使用 nbconvert.
问题是 bokeh
图没有导出到最终的 pdf
文件中。 Bokeh
没有将其图导出到Latex
捕获的一种格式,用于编译 pdf。相反,像 matplotlib
这样的包将为每个图生成 png 文件,然后将这些图链接到乳胶中以生成 pdf。
现在,当我导出笔记本时,所有文本都以 pdf 格式出现,但 none 的情节出现了。如果我导出到 html 文件,这些图就会出现——但如果我尝试打印文档,这些图当然会溢出页面。
有没有人为此找到合适的解决方法?与我一起工作的用户仍然希望能够打印文档并对其进行标记。
标准交互式散景图实际上是 JSON 的集合,以及 JavaScript 库 (BokehJS),它在浏览器中将 JSON 呈现为所需的图。由于 PDF 文档不执行 JavaScript,因此永远不可能以 PDF 形式嵌入标准散景图。
但是,Bokeh 还可以将绘图的静态版本导出为 PNG 或 SVG,它们可以嵌入到 PDF 中。请参阅用户指南中的 Exporting Plots 部分。您首先需要安装一些可选的依赖项(phantomJS、selenium 和 pillow),然后导出绘图将是这样的:
export_png(plot, filename="plot.png")
然后,特别是在笔记本中,您可以内联显示图像,例如:
from IPython.display import Image
Image('plot.png')