我正在编写一个 Java 应用程序,使用 TikZ 为 Latex 生成尝试。
我正在努力排版字典树请按照以下示例操作:
有人可以提供一个如何正确嵌套子节点和相应标签的例子吗?
我现在得到的是:
\begin{tikzpicture}
\node [circle] {}
child{ node [circle] {} edge from parent node[above left] {$B$} }
child{ node [circle] {} edge from parent node[above left] {$F$}
child [circle] {}
};
\end{tikzpicture}
但边缘标签与正确边缘不匹配。
答案1
实际上,有许多问题的答案都标记了边缘......
这可能会给你一些想法:
\documentclass[tikz]{standalone}
\usepackage{forest}
\begin{document}
\begin{forest}
for tree={
circle,
black,
draw,
fill=blue!40,
}
[{}
[{}, edge label={node [midway, above left] {B}}
[{}, edge label={node [midway, right] {A}}
[{}, edge label={node [midway, right] {U}}
[,phantom]
[{}, edge label={node [midway, left] {E}}
[{}, edge label={node [midway, left] {R}}, label=below:Bauer
]
[,phantom]
]
[{}, edge label={node [midway, right] {M}}, label=below:Baum
]
[,phantom]
]
[,phantom]
]
[,phantom]
]
[{}, edge label={node [midway, right] {F}}
[{}, edge label={node [midway, right] {E}}
[{}, edge label={node [midway, right] {L}}
[{}, edge label={node [midway, right] {D}}, label=below:Feld
]
[,phantom]
]
[,phantom]
]
[,phantom]
]
[{}, edge label={node [midway, left] {H}}
[{}, edge label={node [midway, left] {A}}
[{}, edge label={node [midway, left] {H}}
[{}, edge label={node [midway, left] {N}}, label=below:Hahn
]
[,phantom]
]
[{}, edge label={node [midway, right] {U}}
[{}, edge label={node [midway, left] {S}}, label=below:Haus
]
[,phantom]
]
[,phantom]
]
[{}, edge label={node [midway, left] {O}}
[{}, edge label={node [midway, right] {F}}, label=below:Hof
]
]
[{}, edge label={node [midway, right] {U}}
[,phantom]
[{}, edge label={node [midway, left] {H}}
[{}, edge label={node [midway, right] {N}}, label=below:Huhn
]
]
[{}, edge label={node [midway, right] {N}}
[,phantom]
[{}, edge label={node [midway, right] {D}}, label=below:Hund
]
]
]
]
[{}, edge label={node [midway, above right] {K}}
[,phantom]
[{}, edge label={node [midway, right] {A}}
[,phantom]
[{}, edge label={node [midway, right] {T}}
[,phantom]
[{}, edge label={node [midway, right] {Z}}
[,phantom]
[{}, edge label={node [midway, right] {E}}, label=below:Katze
]
]
]
]
]
]
\end{forest}
\end{document}