最近我在 TikZ 上苦苦挣扎,考虑到它是一个如此庞大和全面的库,找到选项和解决方案确实很困难。
我实际上想要做的是在树中绘制一条连接两个相邻兄弟节点的线。就这样。
最好的解决方案是什么?
答案1
标记您想要连接的任何节点,然后简单地使用常规\draw
命令连接它们就足够了。这与您使用哪种方法绘制树无关。下面是一个使用常规 TikZ 树方法或tikz-qtree
方法的组合示例(这为大多数树提供了更简单的语法。在实践中,您可能会使用其中一种。
\documentclass{article}
\usepackage{tikz}
\usepackage{tikz-qtree}
\begin{document}
% using regular TikZ tree methods
\begin{tikzpicture}
\node {A}
child {node (B) {B}
child {node {D}}
child {node {E}}}
child {node (C) {C}};
\draw[dashed] (B) -- (C);
\end{tikzpicture}
\bigskip
% using tikz-qtree
\begin{tikzpicture}[sibling distance=3em]
\Tree [.A
[.\node (B){B};
[.D ]
[.E ]
]
[.\node (C) {C}; ]
]
\draw[dashed] (B) -- (C);
\end{tikzpicture}
\end{document}