Graphviz点节点的垂直对齐
我得到了这个点图,希望节点A和D,B和E,C和F对齐。以下是相关的dot代码:Graphviz点节点的垂直对齐,graphviz,dot,Graphviz,Dot,我得到了这个点图,希望节点A和D,B和E,C和F对齐。以下是相关的dot代码: digraph{ A B C D E F {rank = same; B; C} {rank = same; E; F} A -> B [label="2", weight=2] A -> C [label="0", style=dashed, weight=2] B -> C [label="0", style=dashed, weight=2] B -> D [label="2",
digraph{
A
B
C
D
E
F
{rank = same; B; C}
{rank = same; E; F}
A -> B [label="2", weight=2]
A -> C [label="0", style=dashed, weight=2]
B -> C [label="0", style=dashed, weight=2]
B -> D [label="2", style=dashed, weight=2]
C -> D [label="0", weight=2]
D -> E [label="1", style=dashed, weight=2]
D -> F [label="0", weight=2]
E -> F [label="0", weight=2]
F -> A
}
正如您所见,我已经尝试将权重应用于边缘,但没有成功
可以使用节点的
组
属性建议将同一组节点之间的边对齐成一条直线
声明具有group属性的节点:
A [group=g1]
{rank = same; B[group=g2]; C[group=g3]}
D [group=g1]
{rank = same; E[group=g2]; F[group=g3]}
然后确保所有这些节点之间都有一条(不可见)边:
edge[style=invis];
A -> D
B -> E
C -> F
一切都在一起:
digraph G {
A [group=g1]
{rank = same; B[group=g2]; C[group=g3]}
D [group=g1]
{rank = same; E[group=g2]; F[group=g3]}
A -> B [label="2", weight=2]
A -> C [label="0", style=dashed, weight=2]
B -> C [label="0", style=dashed, weight=2]
B -> D [label="2", style=dashed, weight=2]
C -> D [label="0", weight=2]
D -> E [label="1", style=dashed, weight=2]
D -> F [label="0", weight=2]
E -> F [label="0", weight=2]
F -> A
edge[style=invis];
A -> D
B -> E
C -> F
}