1
我試圖格式化2(或理想情況下N)斷開的二叉樹並排,我想格式是二叉樹「適當」,大致像所以:GraphViz中的並行二叉樹
即使一些節點丟失,剩下的應該留正是他們在哪裏。
我產生這種平衡的一個近似一棵樹與一個叫tree.gv
腳本this Stack answer:
dot one_tree.dot | gvpr -c -f tree.gv | neato -n -Tpdf -o tree.pdf
這不是完美的平衡,我想的方式,但它是非常可行的。
現在我想並排多棵樹。以下是我已經試過:
dot trees.dot | neato -n -Goverlap=false -Tpdf -o tree.pdf
正確並排側,但底部黑葉應權張開,留有餘地他們失蹤的兄弟姐妹。
dot trees.dot | gvpr -c -f tree.gv | neato -n -Tpdf -o tree.pdf
每棵樹格式正確,但它們重疊。
當然,將兩者結合起來會起作用嗎?
dot trees.dot | gvpr -c -f tree.gv | neato -n -Goverlap=false -Tpdf -o tree.pdf
這裏是trees.dot
:
digraph BST {
graph [center=true, margin=0.01, nodesep=0.1, ranksep=0.3, width=1,ratio=.25];
node [fontname="Arial",style=filled,color="0.0 0.0 0.0",fixedsize=true,width=0.15,shape=circle,label=""];
node [margin=0.01,fillcolor="lightgrey"];
edge [dir=none];
node [fillcolor="black"];
Lower;
Lower -> LowerR;
Lower -> LowerL;
LowerL -> LowerLR;
LowerR -> LowerRR;
node [fillcolor="red"];
Upper;
Upper -> UpperR;
Upper -> UpperL;
}
謝謝你,這是指引我前進。我仍然希望樹看起來平衡(更新的問題與所需的圖片)。在左邊的樹中,兩個最底部的節點應該向左移動一點。如果我找出確切的順序,我會在這裏發佈。 – supergra