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:

imagen renderizada

Mi pregunta es, ¿cómo puedo obtener el E -> F que se coloca en D tal que es mentira en la misma columna

¿Fue útil?

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 }
}

imagen de puntos fijo

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
scroll top