Is there a way to give every edge on the left the same label up to a specific level (I don't want labels on my leaf nodes).
I want to build a Huffman-Code, so it would be nice to have every left edge labeled with a 0 and every right edge labeled with a 1. Is there a way to do this with options or automated?
Here is my tree; it's rather big und will only fit onto an A4 landscape page:
\begin{tikzpicture}[every tree node/.style={draw,circle},
level distance=15mm,
sibling distance=8mm,
edge from parent path={(\tikzparentnode) -- (\tikzchildnode)}]
\tikzset{frontier/.style={distance from root=90mm}}
\Tree
[ .205
\edge node[auto=right]{0};
[ .82
\edge node[auto=right]{0};
[ .40
\edge node[auto=right]{0};
[ .20
\edge node[auto=right]{0};
[ .10
\edge node[auto=right]{0};
[ .5 <nl> ]
\edge node[auto=left]{1};
[ .5 I ]
]
\edge node[auto=left]{1};
[ .10 l ]
]
\edge node[auto=left]{1};
[ .20 t ]
]
\edge node[auto=right]{0};
[ .42
\edge node[auto=right]{0};
[ .20
\edge node[auto=right]{0};
[ .10
\edge node[auto=right]{0};
[ .5 b ]
\edge node[auto=left]{1};
[ .5 d ]
]
\edge node[auto=left]{1};
[ .10 p ]
]
\edge node[auto=left]{1};
[ .22
\edge node[auto=right]{0};
[ .12
\edge node[auto=right]{0};
[ .5 k ]
\edge node[auto=left]{1};
[ .7 u ]
]
\edge node[auto=left]{1};
[ .10 s ]
]
]
]
\edge node[auto=left]{1};
[ .123
\edge node[auto=right]{0};
[ .53
\edge node[auto=right]{0};
[ .24
\edge node[auto=right]{0};
[ .12 i ]
\edge node[auto=left]{1};
[ .12 o ]
]
\edge node[auto=left]{1};
[ .29 l ]
]
\edge node[auto=left]{0};
[ .70
\edge node[auto=right]{0};
[ .30
\edge node[auto=right]{0};
[ .15 a ]
\edge node[auto=left]{1};
[ .15 n ]
]
\edge node[auto=left]{1};
[ .40 <sp> ]
]
]
]
\end{tikzpicture}

\documentclass{...}and ending with\end{document}. – Claudio Fiandrino Apr 25 '13 at 10:19