Cómo forzar a todos los nodos en la misma columna en graphviz?
Pregunta
Estoy tratando de modelar un cierto flujo usando graphviz, y no puedo encontrar la manera de modelar el siguiente gráfico que compartir el mismo centro horizontal
digraph exmp {
A -> B -> C -> D
C -> E [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]
subgraph cluster_hackToSinkIt { E -> F }
{ rank="sink" E F }
}
esto resulta en el siguiente gráfico:
Mi pregunta es, ¿cómo puedo obtener el E -> F que se coloca en D tal que es mentira en la misma columna
Solución
Al menos en mayo de 2007 , no se puede forzar "columnas" por sí , pero puede solicite peso a los bordes que deberían ayudar a la alineación de la fuerza. Pero, en realidad, en este caso, si usted acaba de añadir un borde invisible de D a E, que tenga la alineación vertical.
digraph exmp {
A -> B -> C -> D
C -> E [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]
D -> E [style="invis"] // <---- important new line
subgraph cluster_hackToSinkIt { E -> F }
{ rank="sink" E F }
}
No estoy al tanto de cualquier manera de forzar a los bordes hacia un lado u otro.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow