sphinx.ext.graphviz
-- 在文档中嵌入 Graphviz 图¶
Added in version 0.6.
此插件允许你在文档中嵌入 Graphviz 图。
它添加了以下指令:
- .. graphviz::¶
用于嵌入 Graphviz 代码的指令。
dot
的输入代码作为内容提供。例如:.. graphviz:: digraph foo { "bar" -> "baz"; }
在 HTML 输出中,代码将被渲染为 PNG 或 SVG 图像(参见
graphviz_output_format
)。在 LaTeX 输出中,代码将被渲染为可嵌入的 PDF 文件。你也可以通过将文件名作为
graphviz
的参数并省略额外内容来嵌入外部 dot 文件,例如:.. graphviz:: external.dot
对于所有文件引用,当文件名是绝对路径时,将其视为相对于源目录的相对路径。
Changed in version 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.
图表的标题。
Added in version 1.1.
- :layout: layout type of the graph (text)¶
图的布局(例如
dot
、neato
等)。还允许提供图的命令路径。默认情况下,graphviz_dot
将被使用。Added in version 1.4.
Changed in version 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";
Note
图的名称将按原样传递给 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.
Added in version 1.1.
- :layout: layout type of the graph (text)¶
Added in version 1.4.
Changed in version 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.
Added in version 1.1.
- :layout: layout type of the graph (text)¶
Added in version 1.4.
Changed in version 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¶
调用
dot
的命令名称。默认值为'dot'
;如果dot
不在可执行搜索路径中,你可能需要设置为完整路径。由于此设置在系统之间不可移植,因此通常不建议在
conf.py
中设置它;而应该通过 sphinx-build 命令行上的-D
选项来设置,如以下所示:sphinx-build -M html -D graphviz_dot=C:\graphviz\bin\dot.exe . _build
- graphviz_dot_args¶
要给 dot 的额外命令行参数,作为列表。默认值为空列表。这是设置全局图、节点或边属性的正确地方,通过 dot 的
-G
、-N
和-E
选项。
- graphviz_output_format¶
构建 HTML 文件时 Graphviz 的输出格式。这必须是
'png'
或'svg'
;默认值为'png'
。如果使用'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。