使用 Voilà#
Voilà 可以作为独立应用程序使用,也可以作为 Jupyter 服务器扩展使用。本页介绍如何执行这两种操作。在开始之前,请确保按照安装 Voilà中的步骤进行操作。
以下部分介绍了如何使用 Voilà。
作为独立应用程序#
Voilà 可以用于运行、转换和将 Jupyter 笔记本作为独立应用程序提供服务。这可以通过命令行完成,模式如下
voila <path-to-notebook> <options>
例如,要将bqplot
示例笔记本渲染为独立应用程序,请运行
git clone https://github.com/voila-dashboards/voila
cd voila
voila notebooks/bqplot.ipynb
当您的基于笔记本的应用程序启动时,Voilà 会显示一条消息。默认情况下,Voilà 在localhost:8866
上运行。
要提供Jupyter 笔记本目录,请导航到您要提供的目录,然后简单运行voila
cd notebooks/
voila
现在,由 Voilà 提供的页面将包含目录中所有笔记本的列表。单击其中一个将触发 Voilà 的转换过程。每次单击笔记本时,都会创建一个新的 Jupyter 内核。
作为 Jupyter 服务器扩展#
您还可以在 Jupyter 服务器中(例如,在运行jupyter lab
或jupyter notebook
之后)使用 Voilà。
注意
Voilà 还可以用作笔记本服务器扩展,无论是与笔记本服务器还是与jupyter_server一起使用。
要在预先存在的 Jupyter 服务器中使用 Voilà,首先启动服务器,然后转到以下 URL
<url-of-my-server>/voila
例如,如果您键入jupyter lab
并且它在https://:8888/lab
上运行,那么 Voilà 将在https://:8888/voila
上访问。
在这种情况下,Voilà 将提供 Jupyter 服务器启动所在的目录。
Voilà 如何工作?#
当 Voilà 在笔记本上运行时,会发生以下步骤
Voilà 运行笔记本中的代码并收集输出
笔记本及其输出被转换为 HTML。默认情况下,笔记本的代码单元格是隐藏的。
此页面作为 Tornado 应用程序或通过 Jupyter 服务器提供。
当用户访问页面时,页面上的小部件可以访问底层的 Jupyter 内核。
示例笔记本#
笔记本目录包含一组可以使用 Voilà 渲染的 Jupyter 笔记本
basics.ipynb - 一个需要往返内核的交互式笔记本。
bqplot.ipynb - 使用自定义 Jupyter 小部件,例如bqplot。
dashboard.ipynb - 使用 gridstack.js 进行每个输出的布局。
gridspecLayout.ipynb - 使用GridspecLayout进行不同小部件的布局。
interactive.ipynb - 使用 ipywidget 的 @interact。
ipympl.ipynb - 包含使用ipympl小部件的自定义交互式 matplotlib 图形。
ipyvolume.ipynb - 使用自定义 Jupyter 小部件,例如ipyvolume。
query-strings.ipynb - 使用 HTTP 查询参数对笔记本进行参数化
xleaflet.ipynb - 一个使用 C++ 内核和交互式小部件的笔记本
这些示例展示了不同的交互式 HTML 小部件,可以作为开始使用 Voilà 的灵感。
要运行示例笔记本,可以使用以下方式安装一些额外的库
conda install -c conda-forge ipywidgets ipyvolume bqplot scipy
或者
conda env create
然后可以使用以下方式提供示例
cd notebooks/
voila