如何在Graphviz中强制指定边的位置?

8

我遇到了边缘重叠的问题。在如何强制节点位于同一列的先前问题中,我发现了如何将节点强制放在一列中,但这会导致出现其他问题。

digraph exmp {
  A -> B -> C -> D -> E
  C -> F [constraint=false]
  A -> C [style="dotted", constraint=false]
  A -> D [style="dotted",  constraint=false]
  B -> D [constraint=false]
  D -> A [style="dashed", constraint=false]
  C -> A [style="dashed", constraint=false]
  E -> F [style="invis"] 
  F -> G
  E -> C [constraint="false"]
}

渲染为:

alt text http://img98.imageshack.us/img98/8324/wrong2.gif

我的问题是,从E -> C和C -> F的边缘在节点C的同一点开始/结束,并且虚线和点线边缘都在节点的右侧。

我该如何告诉特定的边缘去节点的右侧?

1个回答

11

在graphviz邮件列表中发现,至少有可能解决E -> C和C -> F重叠的问题。

最简单的解决方案是使用指南针点端口:

C:e -> F [constraint=false]

--Emden


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接