sphinx.ext.graphviz – 添加 Graphviz 图形

在 0.6 版本中添加。

此扩展允许你在文档中嵌入 Graphviz 图形。

它添加了这些指令

.. graphviz::

用于嵌入 graphviz 代码的指令。 dot 的输入代码作为内容给出。 例如

.. graphviz::

   digraph foo {
      "bar" -> "baz";
   }

在 HTML 输出中,代码将被渲染为 PNG 或 SVG 图像(请参阅 graphviz_output_format)。 在 LaTeX 输出中,代码将被渲染为可嵌入的 PDF 文件。

你还可以通过将文件名作为 graphviz 的参数给出,而不添加其他内容来嵌入外部 dot 文件

.. graphviz:: external.dot

对于 Sphinx 中的所有文件引用,如果文件名是绝对路径,则将其视为相对于源目录。

在 1.1 版本中更改: 添加了对外部文件的支持。

选项

:alt: 替换文本 (text)

图形的替换文本。 默认情况下,图形代码用作替换文本。

在 1.0 版本中添加。

:align: 图形的对齐方式 (左, 居中 右)

图形的水平对齐方式。

在 1.5 版本中添加。

:caption: 图形的标题 (text)

图形的标题。

在 1.1 版本中添加。

:layout: 图形的布局类型 (text)

图形的布局(例如 dot, neato 等)。 也允许使用 graphviz 命令的路径。 默认情况下,使用 graphviz_dot

在 1.4 版本中添加。

在 2.2 版本中更改: graphviz_dot 重命名

:name: 标签 (text)

图形的标签。

在 1.6 版本中添加。

:class: 类名 (以空格分隔的类名列表)

图形的类名。

在 2.4 版本中添加。

.. graph::

用于嵌入单个无向图的指令。 名称作为指令参数给出,图形的内容是指令内容。 这是一个方便的指令,用于生成 graph <name> { <content> }

例如

.. graph:: foo

   "bar" -- "baz";

注意

图形名称将不加更改地传递给 Graphviz。 如果它包含非字母数字字符(例如破折号),则必须用双引号将其引起来。

选项

graphviz 相同。

:alt: 替换文本 (text)

在 1.0 版本中添加。

:align: 图形的对齐方式 (左, 居中 右)

在 1.5 版本中添加。

:caption: 图形的标题 (text)

在 1.1 版本中添加。

:layout: 图形的布局类型 (text)

在 1.4 版本中添加。

在 2.2 版本中更改: graphviz_dot 重命名

:name: 标签 (text)

在 1.6 版本中添加。

:class: 类名 (以空格分隔的类名列表)

图形的类名。

在 2.4 版本中添加。

.. digraph::

用于嵌入单个有向图的指令。 名称作为指令参数给出,图形的内容是指令内容。 这是一个方便的指令,用于生成 digraph <name> { <content> }

例如

.. digraph:: foo

   "bar" -> "baz" -> "quux";

选项

graphviz 相同。

:alt: 替换文本 (text)

在 1.0 版本中添加。

:align: 图形的对齐方式 (左, 居中 右)

在 1.5 版本中添加。

:caption: 图形的标题 (text)

在 1.1 版本中添加。

:layout: 图形的布局类型 (text)

在 1.4 版本中添加。

在 2.2 版本中更改: graphviz_dot 重命名

:name: 标签 (text)

在 1.6 版本中添加。

:class: 类名 (以空格分隔的类名列表)

图形的类名。

在 2.4 版本中添加。

还有这些配置值

graphviz_dot
类型:
str
默认值:
'dot'

用于调用 dot 的命令名称。 如果 dot 不在可执行搜索路径中,你可能需要将其设置为完整路径。

由于此设置在系统之间不可移植,因此通常在 conf.py 中设置它没有用; 而是应该通过 -D 选项在 sphinx-build 命令行中给出它,像这样

sphinx-build -M html -D graphviz_dot=C:\graphviz\bin\dot.exe . _build
graphviz_dot_args
类型:
Sequence[str]
默认值:
()

要提供给 dot 的其他命令行参数,以列表形式。 这是通过 dot 的 -G-N-E 选项设置全局图形、节点或边属性的正确位置。

graphviz_output_format
类型:
'png' | 'svg'
默认值:
'png'

构建 HTML 文件时 Graphviz 的输出格式。 这必须是 'png''svg' 之一。 如果使用 'svg',为了使 URL 链接正常工作,必须设置适当的 target 属性,例如 "_top""_blank"。 例如,以下图形中的链接应在 svg 输出中工作

.. graphviz::

     digraph example {
         a [label="sphinx", href="https://sphinx-doc.cn/", target="_top"];
         b [label="other"];
         a -> b;
     }

在 1.0 版本中添加: 以前,输出始终为 PNG。