sphinx.ext.graphviz --添加Graphviz图表

Added in version 0.6.

此扩展允许您嵌入 Graphviz 文档中的图表。

它添加了以下指令:

.. graphviz::

指令来嵌入图形代码。的输入代码 dot 是作为内容给出的。例如::

.. graphviz::

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

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

还可以嵌入外部点文件,方法是将文件名作为参数指定给 graphviz 并且没有其他内容::

.. graphviz:: external.dot

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

在 1.1 版本发生变更: 添加了对外部文件的支持。

选项

:alt: alternate text (text)

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

Added in version 1.0.

:align: alignment of the graph (left, center or right)

图形的水平对齐方式。

Added in version 1.5.

:caption: caption of the graph (text)

图表的标题。

Added in version 1.1.

:layout: layout type of the graph (text)

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

Added in version 1.4.

在 2.2 版本发生变更: 重命名自 graphviz_dot

:name: label (text)

图表的标签。

Added in version 1.6.

:class: class names (a list of class names separated by spaces)

图形的类名。

Added in version 2.4.

.. graph::

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

例如::

.. graph:: foo

   "bar" -- "baz";

备注

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

选项

相同于 graphviz

:alt: alternate text (text)

Added in version 1.0.

:align: alignment of the graph (left, center or right)

Added in version 1.5.

:caption: caption of the graph (text)

Added in version 1.1.

:layout: layout type of the graph (text)

Added in version 1.4.

在 2.2 版本发生变更: 重命名自 graphviz_dot

:name: label (text)

Added in version 1.6.

:class: class names (a list of class names separated by spaces)

图形的类名。

Added in version 2.4.

.. digraph::

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

例如::

.. digraph:: foo

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

选项

相同于 graphviz

:alt: alternate text (text)

Added in version 1.0.

:align: alignment of the graph (left, center or right)

Added in version 1.5.

:caption: caption of the graph (text)

Added in version 1.1.

:layout: layout type of the graph (text)

Added in version 1.4.

在 2.2 版本发生变更: 重命名自 graphviz_dot

:name: label (text)

Added in version 1.6.

:class: class names (a list of class names separated by spaces)

图形的类名。

Added in version 2.4.

还有以下配置值:

graphviz_dot
类型:
str
默认:
'dot'

要调用的命令名称 dot .如果出现以下情况,您可能需要将其设置为完整路径 dot 不在可执行搜索路径中。

由于此设置不能从一个系统移植到另一个系统,因此设置它通常没有用处 conf.py ;而是把它放在 sphinx-build 命令行通过 -D 选项应该更好,如下所示::

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

以列表形式提供给点的附加命令行参数。这是通过点设置全局图、节点或边属性的正确位置 -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://www.sphinx-doc.org/", target="_top"];
         b [label="other"];
         a -> b;
     }

Added in version 1.0: 此前,产出始终是PNG。