Como forçar a posição das arestas no GraphViz?
Pergunta
Estou tendo problemas com arestas sobrepondo -se. No meu Pergunta anterior de como forçar os nós a estar na mesma coluna, descobriu como forçar os nós a uma coluna, mas isso faz com que outros problemas apareçam.
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"]
}
Renderiza para:
ALT TEXTO http://img98.imageshack.us/img98/8324/wrong2.gif
Meu problema é que as bordas de E -> C e C -> F estão começando/terminando no mesmo ponto no nó C e as bordas tracejadas e pontilhadas estão todas no lado direito dos nós.
Como eu poderia dizer às bordas específicas para ir para o lado direito do nó?
Solução
Após uma mensagem na lista de e -mail do GraphViz, descobri que é pelo menos possível remover o problema de sobreposição E -> C e C -> F.
A solução mais simples é usar uma porta do Compass Point:
C:e -> F [constraint=false]
- Emden