更改图形的大小(宽度和高度)(GraphViz&dot)

Tom*_*rvo 5 graph dot graphviz

通常,GraphViz以点语言绘制的图形的默认布局有点"紧".由于视觉空间太小,很难在边缘上放置有意义的标签,图形看起来很杂乱.

如何影响GraphViz /点图的垂直和水平间距?

Tom*_*rvo 11

默认

我将从一个简单的图表开始,由点引擎以默认方式布局:

digraph {
node [shape=circle, width=0.4];
A->B
A->D
B->C
D->E 
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

改变高度

如您所见,布局非常紧凑.请注意,我的排名(行)自然是从上到下.我可以通过利用这个并使用(rank separation)变量来明确设置排名之间的空间来影响图的高度ranksep:

digraph { 
node [shape=circle, width=0.4];
ranksep = 1;
A->B
A->D
B->C
D->E 
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

改变宽度

最后,我们可能想要扩大图表.这里我们使用nodesep变量来增加节点(列)之间的空间:

digraph { 
node [shape=circle, width=0.4];
nodesep=1.5;
A->B
A->D
B->C
D->E 
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 如果您使用“dot”命令来可视化生成的有向图,则可以将这些作为选项添加到命令中:“-Granksep=1”或“-Gnodesep=1.5”等。 (2认同)