我将以下内容输入到Dot中:
digraph G {
subgraph cluster1 {
fontsize = 20;
label = "Group 1";
A -> B -> C -> D;
style = "dashed";
}
subgraph {
O [shape=box];
}
subgraph cluster2 {
fontsize = 20;
label = "Group 2";
Z -> Y -> X -> W [dir=back];
style = "dashed";
}
D -> O [constraint=false];
W -> O [constraint=false, dir=back];
}
并且它会产生下面的输出结果:
我该如何对齐节点O
,使其与D
和W
在同一个水平线上?也就是说,让图表看起来像这样:
A Z
| |
B Y
| |
C X
| |
D-O-W
添加
{ rank=same; D; O; W; }
产生了错误。
Warning: D was already in a rankset, ignored in cluster G
Warning: W was already in a rankset, ignored in cluster G
我想通过向O
的子图添加不可见的节点和边来实现破解,但我想知道是否漏掉了一些Dot的魔力。