如何在Sphinx中使用Jupyter笔记本
朱庇特笔记本是描述计算叙事的常用工具混合代码、散文、图像、交互式组件等。将它们嵌入到Sphinx项目中可以将这些丰富的文档用作文档,它可以为教程、示例和其他类型的技术内容提供很好的体验。有一些扩展允许集成Jupyter和Sphinx,本文档将解释如何实现一些最常见的功能。
包括经典.ipynb文件
Sphinx文档中的笔记本
在Sphinx中,有两个主要扩展添加了支持Jupyter笔记本的源文件:nbsphinx公司和MyST-NB公司它们具有类似的意图和基本功能:两者都可以在中阅读笔记本.ipynb文件
和支持的其他格式朱皮文,和的配置方式类似(请参见现有相关扩展了解更多关于它们差异的背景)。
首先,使用您喜欢的编辑器创建一个Jupyter笔记本(例如,JupyterLab公司).例如,源/笔记本/示例 1.ipynb公司
:
接下来,您需要启用其中一个扩展,如下所示:
最后,您可以在任何目录树.例如,将其添加到根文档中:
.. 目录树::
:最大深度:2:标题:内容:笔记本电脑/示例1
```{目录树}
---最大深度:2标题:内容:
---笔记本电脑/示例1```
笔记本将呈现为文档中的任何其他HTML页面做了之后制作 html格式
.
为了进一步自定义渲染过程,请参阅nbsphinx公司或MyST-NB公司文档。
使用笔记本创建示例库
nbsphinx公司支持从Jupyter列表创建缩略图库笔记本电脑.此功能依赖于狮身人面像画廊并将其扩展到使用Jupyter笔记本而不是Python脚本。
要使用它,您需要安装nbsphinx和Sphinx-Gallery,并修改您的conf.py公司
如下:
conf.py公司
扩展 = [
“nbsphinx”,
“sphinx_gallery.load_style”,
]
完成此操作后,有两种方法可以创建库:
例如,这个reST标记将创建一个缩略图库使用通用图像作为缩略图,得益于Sphinx-Gallery的默认风格:
缩略图库
==================
.. nb画廊::笔记本/示例1笔记本电脑/示例2
#缩略图库```{nbgallery}笔记本电脑/示例1笔记本/示例2```
要查看野生笔记本电脑图库的一些示例:
背景
现有相关扩展
在本文件的第一部分我们已经看到了nbsphinx公司和MyST-NB公司都是类似的。然而,它们之间存在一些差异:
nsphinx使用潘多克将标记从Jupyter笔记本转换为reStructuredText然后到docutils AST公司,而MyST-NB使用MyST分析器将Markdown文本直接转换为docutils AST。因此,nbsphinx假设潘多克风味的降价,而MyST-NB使用MyST风味降价.两种Markdown口味基本相同,但它们有一些不同。
nbsphinx在解析阶段执行每个笔记本,而MyST-NB可以提前执行所有笔记本并用缓存它们jupyter缓存.这可以在修改笔记本时缩短构建时间如果使用MyST-NB。
nbsphinx提供创建缩略图库的功能,而MyST-NB目前没有这种功能(请参见使用笔记本创建示例库有关图库的更多信息)。
MyST-NB允许在文档中嵌入来自笔记本的Python对象(阅读他们的“粘合”文档更多信息)并提供更复杂的错误报告比nbsphinx的还多。
代码单元及其输出的视觉外观略有不同:nbsphinx默认呈现单元格编号,而MyST-NB没有。
决定使用哪一个取决于您的用例。作为一般建议: