This answer描述了如何将GraphViz集群连接到节点和其他集群。将GraphViz集群连接到自身
我想连接一个集群到自己,所以箭头退出集群边界并重新进入(想象一个状态机有一个过渡到自己)。
下面是一个例子:
digraph example {
compound=true;
"B" -> "C" [ltail="cluster_s0", lhead="cluster_s1", minlen=2];
"D" -> "C" [ltail="cluster_s1", lhead="cluster_s1", minlen=2];
subgraph cluster_s0 {
"A" -> "B";
}
subgraph cluster_s1 {
"C" -> "D";
}
}
这将引发警告,并提请集群,而不是外部的内部箭头:
这里是我想要什么(很粗糙)素描:
有没有办法让GraphViz画一个从D
到C
的箭头,然后像上面的例子那样退出并重新进入簇边界?
我认为这是唯一的解决办法是有D->Ç边缘经过是这样的集群外的中间,看不见的节点 - 但我没有运气在其前往的位置这个节点是合理的,所以你最终得到的是遍布整个地方的线条,而不是形成一个简单的弧线。您可以通过将边缘指定为“D”来获得更好的结果:n - >“C”:n' - 端口方向将线条变成一条弧线,但它仍然不会剪辑正确。 – jasonharper