2012-09-11 111 views
1

我想實現a)垂直邊緣標籤或b)水平延伸的樹,以便將此圖形放在單個A4頁面上。我會怎麼做?使Graphviz邊緣標籤垂直(或使樹水平延伸)

digraph g { 
node[shape=point] 
root -> 1 [label = "abcdefghijklmnopqrstuvwxyz$"] 
root -> 2 [label = "bcdefghijklmnopqrstuvwxyz$"] 
root -> 3 [label = "cdefghijklmnopqrstuvwxyz$"] 
root -> 4 [label = "defghijklmnopqrstuvwxyz$"] 
root -> 5 [label = "efghijklmnopqrstuvwxyz$"] 
root -> 6 [label = "fghijklmnopqrstuvwxyz$"] 
root -> 7 [label = "ghijklmnopqrstuvwxyz$"] 
root -> 8 [label = "hijklmnopqrstuvwxyz$"] 
root -> 9 [label = "ijklmnopqrstuvwxyz$"] 
root -> 10 [label = "jklmnopqrstuvwxyz$"] 
root -> 11 [label = "klmnopqrstuvwxyz$"] 
root -> 12 [label = "lmnopqrstuvwxyz$"] 
root -> 13 [label = "mnopqrstuvwxyz$"] 
root -> 14 [label = "nopqrstuvwxyz$"] 
root -> 15 [label = "opqrstuvwxyz$"] 
root -> 16 [label = "pqrstuvwxyz$"] 
root -> 17 [label = "qrstuvwxyz$"] 
root -> 18 [label = "rstuvwxyz$"] 
root -> 19 [label = "stuvwxyz$"] 
root -> 20 [label = "tuvwxyz$"] 
root -> 21 [label = "uvwxyz$"] 
root -> 22 [label = "vwxyz$"] 
root -> 23 [label = "wxyz$"] 
root -> 24 [label = "xyz$"] 
root -> 25 [label = "yz$"] 
root -> 26 [label = "z$"] 
root -> 27 [label = "$"] 

}

回答

0

一個變通我剛剛發現在網絡上是獨立的每一個字符用「\ n」(如換行符)。這不是很漂亮,但它基本上實現了垂直邊緣標籤:

例如:

root -> 1 [label = "f\ng\nh\ni\nj\nk\nl\nm\nn\no\np\nq\nr\ns\nt\nu\nv\nw\nx\ny\nz\n$"] 
0

一種可能性是使用unflatten實用。

例如:

unflatten -l 8 yourdotfile.gv | dot | neato -s -n2 -Tpng -o result.png 

所得圖表沒有像以前那樣寬。