小编Kef*_*fen的帖子

如何防止边缘标签弄乱graphviz中的布局?

我有一个简单的垂直图,使用以下代码看起来漂亮且对称,没有任何标签:

digraph test_alignment
{
    {rank=same; a -> b;}
    a -> c;
    b -> c;
    c -> d;
    d -> e;
    d -> f;
    {rank=same; e -> f;}
}
Run Code Online (Sandbox Code Playgroud)

初始图

我想标记 A 和 B 之间的边缘以及 E 和 F 之间的边缘,对每个标签使用相同的字符串。我期待相同的输出,除了带有相同标签的更长的 A->B 和 E->F 边。

不幸的是,一旦我向这些边之一添加标签,总体布局就会看起来有点歪斜(如果我向 E->F 边添加标签,结果是相似的):

digraph test_alignment
{
    {rank=same; a -> b [label="Label"];}
    a -> c;
    b -> c;
    c -> d;
    d -> e;
    d -> f;
    {rank=same; e -> f;}
}
Run Code Online (Sandbox Code Playgroud)

一个标签的同一张图

我对 graphviz 非常陌生,并且根据 Stack Overflow 上的许多问题,我一直在尝试不同的秩和约束组合,我尝试使用集群来查看它是否可以独立地保持顶部和底部正确对齐,并尝试使用dot、ccomp、gvpack 和neato 的组合产生了类似的结果。 …

label graph-theory dot graphviz edge-list

3
推荐指数
1
解决办法
2798
查看次数

标签 统计

dot ×1

edge-list ×1

graph-theory ×1

graphviz ×1

label ×1