如何让Sphinx的继承图更易读?
和这位朋友的帖子类似,我发现Sphinx生成的graphviz输出看起来很难读:

我该如何生成可读的输出呢?
- 如果我加上
-Gfontsize=140
,什么也没有发生。 - 如果我让它用
neato
而不是dot
,它会生成可读的输出,但图形就不是树状的了。
1 个回答
7
我从这个讨论串找到了答案。在graphviz.py
的代码里,图的默认大小是8.0x12.0。如果你想让Graphviz自己决定图的大小,你需要在conf.py
里加上这个设置,这样Sphinx的graphviz扩展就会使用你设定的空字符串,而不是它的默认值:
inheritance_graph_attrs = dict(size='""')
另外,如果你遇到这个问题,可能是因为一旦让Graphviz决定大小,图会变得太宽。你还需要加上属性rankdir="TB"
,这样树形结构就会从上到下排列,而不是从左到右:
inheritance_graph_attrs = dict(rankdir="TB", size='""')