【问题标题】:Holoviews (Bokeh) with reveal.js带有reveal.js的Holoviews(散景)
【发布时间】:2018-02-14 09:08:15
【问题描述】:

我有一个带有 Holoviews (Bokeh) 交互式绘图的演示文稿。演示文稿与rise(在笔记本内)一起工作正常,但是当我在本地使用reveal.js(v3.6.0)将其转换为幻灯片时,输出不显示。即使通过 CDN 发布服务也不能解决问题。有人遇到过这种情况吗?

【问题讨论】:

  • 我没有直接用reveal.js尝试过这个,但是它可以很好地使用基于reveal.js的damianavila.github.io/RISEpyviz.github.io/pyviz/tutorial/01_Workflow_Introduction.html 有一个示例笔记本。
  • 是的,正如我在帖子中提到的,它适用于 Rise。这就是为什么使用reveal.js 导出失败的原因很奇怪。
  • 啊,我想我不明白你在这里要做什么,但无论如何我都没有尝试过。祝你好运!
  • 谢谢! reveal.js 允许(或在任何情况下应该)做的是将幻灯片导出为 HTML,可以与不使用 Jupyter 笔记本的其他人共享。因此,例如,如果想要在自己的主页上嵌入演示文稿,则需要将演示文稿导出为 HTML 幻灯片。
  • 我想我可以重现这一点,尽管我仍然不确定您正在调用什么命令。如果我将talk that works fine in RISE in Jupyter 保存到磁盘,我可以使用jupyter nbconvert --to html Bednar_INDEX_2018.ipynb 将其转换为可共享的HTML。这很好用,包括所有图表,但它是报告格式而不是单独的幻灯片。如果我尝试使用 jupyter nbconvert --to slides Bednar_INDEX_2018.ipynb 制作幻灯片以使用reveal.js,我看不到任何 HoloViews 图,这大概是您报告的内容?

标签: jupyter-notebook bokeh reveal.js holoviews rise


【解决方案1】:

一旦我能够重现这个问题,我就提出了issue on the RISE site,RISE 作者向我指出了this issue on the Bokeh site,这让我可以让它在我的情况下工作。解决方案就是不要告诉 RISE 跳过包含hv.extension("bokeh") 的单元格。该单元加载 BokehJS,这是显示任何基于 Bokeh 的绘图所必需的,跳过它对于实时演示效果很好,但显然不适用于任何导出版本。在告诉 RISE 不要跳过该单元格后,我的 example notebook 现在在使用 jupyter nbconvert --to slides Bednar_INDEX_2018.ipynb 转换为 .html 时可以正常工作,并且可以按照RISE documentation 中的说明将其转换为 PDF。 PDF 输出的格式不完美,但至少所有图都显示出来了。

【讨论】:

  • 无论Bokeh工具栏在哪里,pdf输出中都会有一些杂散的文本,但如果你关闭工具栏,它应该可以使用:from holoviews.plotting.bokeh import ElementPlot; ElementPlot.toolbar=None
  • 万岁!非常感谢,詹姆斯。我也在 Reveal 上提出了这个问题,但他们说这可能更适合 stackoverflow。不管怎样,剧情终于上映了,所以我非常高兴。另一方面,我隐藏了输入单元格以仅显示绘图,但现在它们又回来了。猜猜这需要更多的摆弄。再次非常感谢:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-16
  • 1970-01-01
  • 2016-05-20
  • 2018-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多