graphviz中的树冠图-如何正确保持顺序?

graphviz中的树冠图-如何正确保持顺序?,graphviz,Graphviz,我编写了以下graphviz代码来在8个节点上绘制树冠图: graph G { u1 [label=<<I>u<SUB>1</SUB></I>>] v1 [label=<<I>v<SUB>1</SUB></I>>] u2 [label=<<I>u<SUB>2</SUB></I>>] v2 [label=

我编写了以下graphviz代码来在8个节点上绘制树冠图:

graph G {
  u1 [label=<<I>u<SUB>1</SUB></I>>]
  v1 [label=<<I>v<SUB>1</SUB></I>>]
  u2 [label=<<I>u<SUB>2</SUB></I>>]
  v2 [label=<<I>v<SUB>2</SUB></I>>]
  u3 [label=<<I>u<SUB>3</SUB></I>>]
  v3 [label=<<I>v<SUB>3</SUB></I>>]
  u4 [label=<<I>u<SUB>4</SUB></I>>]
  v4 [label=<<I>v<SUB>4</SUB></I>>]
  u1 -- v2 
  u1 -- v3 
  u1 -- v4
  u2 -- v1
  u2 -- v3
  u2 -- v4
  u3 -- v1
  u3 -- v2
  u3 -- v4
  u4 -- v1
  u4 -- v2
  u4 -- v3
}
图G{
u1[标签=]
v1[标签=]
u2[标签=]
v2[标签=]
u3[标签=]
v3[label=]
u4[标签=]
v4[标签=]
u1--v2
u1--v3
u1--v4
u2--v1
u2--v3
u2--v4
u3--v1
u3--v2
u3--v4
u4--v1
u4--v2
u4--v3
}

使用
dot
编译时的结果很好,但不是我想要的结果-我需要节点的顶部“层”的顺序为
u\u 1、u\u 2、u\u 3、u\u 4
,底部层为
v\u 1、v\u 2、v\u 3、v\u 4
,这样它就可以看起来像一个树冠图。但是,我不知道如何告诉
dot
这样做。任何帮助都会很棒。

控制节点布局的一些有用技术包括:

  • 边缘
最有用的时候

在这种特殊情况下,您可以对边应用
constraint=false
,以避免它们影响布局,并添加不可见边来定位节点

在节点声明和边缘列表之间插入以下位(第9行之后):

  edge[style=invis]
  u1 -- v1
  u2 -- v2
  u3 -- v3
  u4 -- v4
  edge[style=visible, constraint=false]