答案1
这是一个带有几个括号的示例。我认为括号端点的定义方式称为“nodewalk”。我可能无法比手册更好地解释它forest
,因此请阅读从第 8 页底部开始的示例,以“终于,最强大的工具”开头,以及第 57 页的 3.8.7。(页面引用基于 2017 年 7 月 14 日的 2.1.5 版手册。forest
)
\documentclass[border=5mm]{standalone}
\usepackage{forest}
\usetikzlibrary{decorations.pathreplacing}
\tikzset{
Brace/.style={
decoration={
brace,
mirror,
amplitude=5pt,
raise=#1 % use argument to style to determine how far the brace is moved
},
decorate
},
% set the default argument to 0
Brace/.default=0
}
\begin{document}
\begin{forest}
for tree={l+=0.08cm} % increase level distance
[1
[2
[4]
{
\draw [Brace] (.south west) -- (!>>>>.south east);
\draw [red,Brace=5pt] (.south west) -- (!>>>.south east);
\draw [blue,Brace=10pt] (.south west) -- (!s.south east);
}
[5]
{
\draw [orange,Brace=15pt] (.south west) -- (!uu21.south east);
}
]
[3
[6]
{
\draw [cyan,Brace=10pt] (.south west) -- (!s.south east);
}
[7]
]
]
\end{forest}
\end{document}