Jupyter笔记本:将散景图导出为pdf,可能使用仅在pdf导出期间运行的Latex代码段

时间:2018-10-19 21:57:12

标签: python pdf latex jupyter-notebook bokeh

我正在跟踪一段时间后发布的question。我有Jupyter Notebook 6.2版。 Bokeh软件包用于交互式绘图。该软件包可以很好地进行绘图,但是Bokeh将绘图保存为HTML格式,因此,如果我尝试将笔记本保存为pdf文件,请使用标准的“另存为...”菜单选项,绘图不会出现。

我的用户希望在笔记本电脑在计算机上时可以使用交互式绘图,还希望能够下载笔记本电脑的PDF(包括绘图),以便他们记录自己的工作。

执行此操作的一种方法(如上一个帖子链接中所述)是使用Bokeh export_png()函数,为每个图生成一个png,然后使用以下命令将这些图导入到笔记本中Jupyter Image()函数。

问题是导入了静态图像,因此失去了交互性。这违反了上述用户要求。

另一种方法是在笔记本中生成交互式图,并导入静态图。这意味着笔记本中的每个图都有2个-为静态图和交互式图。然后,当我导出笔记本时,我将只有静态图,但是我的用户将不得不面对在在线查看笔记本时每个图都有两个副本的困惑。因此,这也不是一个好主意。

我的想法是看是否可以包含一些Latex或markdown代码,这些代码将引用该图像,但要在Latex编译阶段才导入该图像。因此,基本上,“下载为... pdf”步骤将使用笔记本,将其转换为乳胶,然后将Latex编译为pdf。我是否可以在笔记本中包括将图像文件包含在最终pdf中的说明,但不会在实际笔记本中显示它们?

通常的Latex代码段类似

\usepackage{graphix}
\begin{figure}[htbp]
\centering
\includegraphics[width=0.75\linewidth]{file.png}
\end{figure}

有没有办法像这样插入乳胶,使我只能在编译时插入图像,而在实时会话中却不将它们放在笔记本中?

0 个答案:

没有答案