在Sphinx中嵌入matplotlib图表:如何展示文档

3

我有一些包含matplotlib图表的ipynb文档,这些图表是通过%matplotlib inline指令内嵌显示的。

当我尝试展示带有内嵌绘制图表的笔记本时,我使用了Sphinx文档。

ipython nbconvert shalom.ipynb --to rst

但是不幸的是,它只给我提供了没有内联图形的RST。仅有代码清单。

你能告诉我如何生成已渲染绘图的Sphinx文档吗?

我知道这是可能的。


如果你知道它是可能的,为什么还要问我们? :) - James Mills
如果我现在知道怎么做,我早就做完了。但是,唉,我太笨了,猜不出如何应对它。 - Felix
哈哈,没关系 :) 幸运的是我们中有些人擅长谷歌搜索,有些人对Sphinx非常熟悉 :) 或者两者都行 :) - James Mills
1个回答

3
您需要使用Sphinx扩展程序来嵌入图形、数学等内容
Sphinx是用Python编写的,支持编写自定义扩展程序。我们已经为matplotlib文档编写了一些扩展程序,其中一些是matplotlib.sphinxext模块的一部分,一些仅包含在sphinx文档目录中,还有其他组编写的扩展程序,例如numpy和ipython。我们正在本教程中收集它们,并向您展示如何安装和使用它们进行您自己的项目。首先,让我们从git的sphinxext目录中获取python扩展文件(请参见获取数据),并将其安装在我们的sampledoc项目的sphinxext目录中。
您需要修改您的conf.py以包括:
extensions = [
          'matplotlib.sphinxext.mathmpl',
          'matplotlib.sphinxext.only_directives',
          'matplotlib.sphinxext.plot_directive',
          'matplotlib.sphinxext.ipython_directive',
          'sphinx.ext.autodoc',
          'sphinx.ext.doctest',
          'ipython_console_highlighting',
          'inheritance_diagram',
          'numpydoc']

如果我已经有一个ipynb文件,只想让Sphinx将其制作成单个页面,该怎么办? - Felix
好问题,让我们看看能否找到答案 ;) - James Mills
sphinx-build -b html -d _build/doctrees . _build/html your_filename.rst 这样做可以解决问题吗? - James Mills

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接