orderGraphviz - 修复子图

时间:2013-01-11 00:27:08

标签: graphviz dot

我想创建一个像这样的3列图:

enter image description here

代码:

digraph g {
rankdir="LR";
node[shape = circle, fontsize=14];
fontsize=18;
labeljust="l";

{ rank=same;
}

edge[style=invis, fontsize=12];
subgraph clusterA {
    a->b;
    label="A";
}
subgraph clusterC {
  e->f->g;
    label="C";
}

subgraph clusterB {
 c->d;
label="B";
}

}

我想用子图A,C,B排序创建一个图形。如何在没有A - C - B的剩余顺序的情况下向该图添加关系(例如c-> f;和b-> g;)?

1 个答案:

答案 0 :(得分:1)

您可以尝试使用 constraint=false 添加不应影响布局的边缘。在最后一个集群之后,插入如下内容:

edge[constraint=false, style=solid];
c->f;
b->g;

如果群集得到重新排序,您可以添加隐形边(确保constraint=true)来强制执行布局:

c -> e [constraint=true, style=invis];
e -> a [constraint=true, style=invis];