2010-01-21 56 views
18

¿Hay alguna forma de hacer que graphviz se alinee a la izquierda o alinee los nodos en el mismo rango, en lugar de centrar?graphviz: ¿izquierda/derecha alinea los nodos en lugar de centrar?

alt text

digraph h { 
    rankdir=LR; 

    node [shape=record,height=.08,fontsize=11]; 

    elk[label="elk|I am an American Elk"]; 

    buffalo[label="buffalo|Just a buffalo|everywhere I go|people know the part I'm playing"]; 

    cow[label="cow|moo"]; 

    moose[label="Bullwinkle J. Moose|Hey Rocky, watch me pull a rabbit out of my hat!"]; 

    zoo [label="zoo|<p0>|<p1>|<p2>|<p3>"]; 

    zoo:p0 -> elk; 
    zoo:p1 -> cow; 
    zoo:p2 -> moose; 
    zoo:p3 -> buffalo; 
    } 

Respuesta

25

Es agradable ver a alguien trabajar con dichos datos de peso.

He aquí una manera kludgey y poco satisfactoria:

digraph h { 
    rankdir=LR; 
    node [shape=record,height=.08,fontsize=11]; 
    zoo [label="zoo|<p0>|<p1>|<p2>|<p3>"]; 

    node [width=3.5]; 
    elk[label="elk\l|I am an American Elk\l",]; 
    buffalo[label="buffalo\l|Just a buffalo\l|everywhere I go\l|people know the part I'm playing\l"]; 
    cow[label="cow\l|moo\l"]; 
    moose[label="Bullwinkle J. Moose\l|Hey Rocky, watch me pull a rabbit out of my hat!\l"]; 

    zoo:p0->elk; zoo:p1 -> cow; zoo:p2 -> moose; zoo:p3 -> buffalo; 
} 

Dale cada caja en que el rango de la misma anchura (determinada empíricamente), luego a la izquierda a alinear el texto usando "salto de línea alineado a la izquierda" raro \l.

+4

Hmm. No necesito el * texto * alineado a la izquierda en el nodo (el centrado está bien), solo quiero que los nodos se alineen a la izquierda, y no me gusta el ancho constante. –

+6

(pero +1 para la punta '\ l') –

+3

¡definitivamente +1 para la punta' \ l'! –

Cuestiones relacionadas