2012-01-31 48 views
3

考慮下面的圖:排列外節點作爲正方形

graph { 
    node[shape=square]; 
    A [color=olivedrab4 /* pos="0,0!" */ ]; 
    B [color=orange  /* pos="0,3!" */ ]; 
    C [color=royalblue /* pos="5,3!" */ ]; 
    D [color=orangered /* pos="5,0!" */ ]; 

    node[shape=circle]; 
    u -- v -- w -- {x y} 

    A -- u; 
    B -- v; 
    C -- y; 
    D -- x; 

} 

其中neato呈現這樣的:

freely arranged graph

是有辦法來固定在正方形的角部[A-D]和有子圖[u-y]整齊地佈置在?

注:在上面的代碼中取消註釋的位置的提示產生以下,不令人滿意的結果:

position hinted graph

回答

3

只需使用fdp代替neato並取消位置的提示:

fdp -Tpng corners.gv -o corners.png 

graphviz output

或者,如果你想使用neato,添加一些初始屬性POS到其他節點,也和它們放置在中間:

node[shape=circle, pos="2.5,1.5"]; 

(座標之後沒有感嘆號)。

輸出幾乎是一樣的:

graphviz output - neato

+0

感謝了很多!我可能已經仔細閱讀了一些文檔...... – sschober 2012-01-31 22:22:55