GraphViz-创建多行中的群集

GraphViz-创建多行中的群集,graph,graphviz,Graph,Graphviz,我将非常感谢您对我想要的a图的帮助。我希望从一个开始的集群到许多其他集群都有标签,而这些集群又应该被组织成多行 在此之前,我已经编写了以下代码: digraph g{ rankdir="TB"; compound=true; subgraph cluster0{ label="Cluster 0"; a0->b0; b0->c0; a0->c0; } subgraph cluster1{ label="Cluster 1"; a1->b1; b1->c1; a1

我将非常感谢您对我想要的a图的帮助。我希望从一个开始的集群到许多其他集群都有标签,而这些集群又应该被组织成多行

在此之前,我已经编写了以下代码:

digraph g{
rankdir="TB";
compound=true;

subgraph cluster0{
label="Cluster 0";
a0->b0;
b0->c0;
a0->c0;
}

subgraph cluster1{
label="Cluster 1";
a1->b1;
b1->c1;
a1->c1;
}

subgraph cluster2{
label="Cluster 2";
a2->b2;
b2->c2;
a2->c2;
}


subgraph cluster3{
label="Cluster 3";
a3->b3;
b3->c3;
a3->c3;
}

subgraph cluster4{
label="Cluster 4";
a4->b4;
b4->c4;
a4->c4;
}

a0->a1 [ltail=cluster0,lhead=cluster1];
a0->a2 [ltail=cluster0,lhead=cluster2];
a0->a3 [ltail=cluster0,lhead=cluster3];
a0->a4 [ltail=cluster0,lhead=cluster4];

}
尽管此代码生成我的集群并将它们适当地互连,但不幸的是,所有集群(即集群1、2、3和4)都位于同一行中,而我希望集群1和2位于一行中,集群3和4位于另一行中,正好位于包含集群1和2的行的下方

通过使用不可见链接,尽管集群被组织在一起,但它们没有正确对齐(在列中),而且内部节点序列看起来很纠结(例如,请参见以下稍微复杂的情况,其中我希望标记为4的节点始终位于顶部,剩余节点1、2和3应按从左到右的相应顺序放置)

我有没有办法用点来达到这个目的


非常感谢您提前提供的帮助!

您可以通过添加一些不可见边来尝试:

c0->a1 [style=invis];
c0->a2 [style=invis];
c1->a3 [style=invis];
c2->a4 [style=invis];
如果需要,可以从那里进一步改进


这确保了集群位于不同的级别。

非常感谢您的回复。请查看我的帖子编辑,以防您能为我提供进一步的帮助。
c0->a1 [style=invis];
c0->a2 [style=invis];
c1->a3 [style=invis];
c2->a4 [style=invis];