Voilà 项目教程
项目地址:https://gitcode.com/gh_mirrors/vo/voila
1. 项目介绍
Voilà 是一个开源项目,旨在将 Jupyter Notebook 转换为独立的 Web 应用程序。与传统的 HTML 转换不同,Voilà 为每个连接的用户提供一个专用的 Jupyter 内核,可以执行 Jupyter 交互式小部件的回调。默认情况下,Voilà 禁止从前端执行请求,从而防止执行任意代码。此外,Voilà 默认会剥离输入单元格,以确保渲染的 Notebook 中不包含源代码。
2. 项目快速启动
安装 Voilà
Voilà 可以通过 mamba
(或 conda
)包管理器从 conda-forge
安装,也可以通过 pip
从 PyPI 安装。
# 使用 mamba 安装
mamba install -c conda-forge voila
# 使用 pip 安装
pip install voila
启动 Voilà
安装完成后,可以通过以下命令启动 Voilà 服务:
# 渲染 bqplot 示例 Notebook 为独立应用
voila bqplot.ipynb
# 渲染目录中的所有 Jupyter Notebook
voila
JupyterLab 预览扩展
Voilà 还提供了一个 JupyterLab 扩展,可以在侧边栏中预览 Notebook。对于 JupyterLab 3.0 及以上版本,安装 Voilà 后,扩展会自动安装。
# 安装 JupyterLab 扩展(如果需要手动安装)
jupyter labextension install @voila-dashboards/jupyterlab-preview
3. 应用案例和最佳实践
案例1:使用 Voilà 构建交互式仪表盘
Voilà 可以轻松地将 Jupyter Notebook 转换为交互式 Web 应用程序。例如,可以使用 Voilà 构建一个包含交互式小部件的仪表盘,用户可以通过这些小部件与数据进行交互。
案例2:使用 Voilà 展示数据分析结果
在数据科学项目中,Voilà 可以用于展示数据分析的结果。通过将 Notebook 转换为 Web 应用程序,可以方便地与团队成员或客户共享分析结果。
最佳实践
- 剥离源代码:默认情况下,Voilà 会剥离输入单元格中的源代码。如果需要展示源代码,可以在启动 Voilà 时设置
--strip_sources=False
。 - 安全性:Voilà 默认禁止从前端执行代码,确保应用程序的安全性。
4. 典型生态项目
Jupyter Notebook
Voilà 是基于 Jupyter Notebook 构建的,因此 Jupyter Notebook 是其核心生态项目之一。Jupyter Notebook 是一个开源的 Web 应用程序,允许用户创建和共享包含实时代码、方程、可视化和叙述性文本的文档。
JupyterLab
JupyterLab 是 Jupyter Notebook 的下一代用户界面,提供了更强大的功能和更灵活的布局。Voilà 提供了 JupyterLab 扩展,可以在 JupyterLab 中预览 Voilà 应用程序。
nbconvert
nbconvert 是一个用于将 Jupyter Notebook 转换为其他格式的工具,如 HTML、PDF 等。Voilà 依赖于 nbconvert 来渲染 Notebook。
jupyter_server
jupyter_server 是 Jupyter Notebook 的后端服务器,Voilà 可以作为其扩展运行,提供 Notebook 的 Web 应用程序功能。
通过这些生态项目,Voilà 可以与其他 Jupyter 工具无缝集成,提供更强大的功能和更好的用户体验。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考