2013-10-03 2 views
5

Layout engine è neato. Mi piacerebbe avere più spazio tra la freccia da a a c e il nodo b. margin e pad non aiutano con neato. Questo è il mio grafico:Graphviz: Distanza tra il bordo e i nodi passati con neato

digraph G { 
    splines=true  

    a [pos="0.0,0.0!"]; 
    b [pos="0.0,1.0!"]; 
    c [pos="0.0,2.0!"]; 

    a -> b; 
    a -> c; 
    b -> c; 
} 

Current graph

è possibile?

risposta

3

Acquisire la definizione grafico originale, aggiungendo un attributo esep=1 avere la seguente:

digraph G { 
    splines=true; esep=1; 


    a [pos="0.0,0.0!"]; 
    b [pos="0.0,1.0!"]; 
    c [pos="0.0,2.0!"]; 

    a -> b; 
    a -> c; 
    b -> c; 
} 

stamperà seguito con neato:

Output with added <code>esep</code> attribute

Come per la documentation per tale attributo:

Margine utilizzato attorno ai poligoni ai fini del routing del bordo spline. L'interpretazione è la stessa data per sep. Questo dovrebbe normalmente essere rigorosamente inferiore a settembre.

+0

Scusa, in qualche modo non ho visto la tua risposta negli ultimi giorni. Grazie, hai ragione funziona. Ma sembra che il mio piccolo esempio qui sia minuscolo. Il problema è che il routing funziona solo quando i nodi hanno una distanza minima tra loro. Non riesco a far rispettare questa distanza nella mia applicazione, i nodi potrebbero essere molto vicini tra loro. 'esep' allarga questa distanza, in modo che il routing non funzioni nei miei casi. Qualche idea, se si può aggirare questo problema? Ma sembra che questo sia intrinseco a Graphviz. –