我正在努力创造但无法添加红色框。我正在努力进行更多其他修改:用箭头代替线条、添加标题和更多空间,这样框就不会被切断。这是我到目前为止的代码!
\documentclass{standalone}
\usepackage{forest}
\begin{document}
\begin{forest}
for tree={
draw=black, align=center, l sep=4ex, parent anchor=south, child anchor=north,
node options={font=\footnotesize, minimum width=14em, minimum height=10ex},
edge path={
\noexpand\path[\forestoption{edge}]
(!u.parent anchor) -- +(0,-2ex) -| (.child anchor)\forestoption{edge label};
}
}
[Parent
[Child2
[Child21]
[Child22]
[Child23,name=Child23]]]]
\end{forest}
\end{document}
答案1
\documentclass[tikz,border=3.14pt]{standalone}
\usepackage{forest}
\usetikzlibrary{positioning}
\begin{document}
\begin{forest}
for tree={
draw=black, align=center, l sep=4ex, parent anchor=south, child anchor=north,
node options={font=\footnotesize, minimum width=14em, minimum height=10ex},
edge path={
\noexpand\path[\forestoption{edge}]
(!u.parent anchor) -- +(0,-2ex) -| (.child anchor)\forestoption{edge label};
}
}
[Parent,name=Parent
[Child2
[Child21]
[Child22]
[Child23,name=Child23]]]]
\node[right=2cm of Parent,draw, minimum width=14em, minimum
height=10ex,red](Stepfather){};
\draw[red] (Stepfather) -- (Parent);
\end{forest}
\end{document}
答案2
这是一种使用假根将节点添加为树的一部分的方法。对于复杂的情况,这种方法往往更容易,尽管在这里肯定没有必要。
不过,我建议更新您的代码以使用 Forest 的edges
库以及更灵活的锚点规范。arrows.meta
可用于向您的边缘添加奇特的箭头提示。
\documentclass[border=10pt]{standalone}
\usepackage[edges]{forest}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{forest}
forked edges,
for tree={
draw=black,
align=center,
l sep'=4ex,
parent anchor=children,
child anchor=parent,
font=\footnotesize,
minimum width=14em,
minimum height=10ex,
edge+={-Latex},
}
[, coordinate
[Parent, no edge
[Child2
[Child21]
[Child22]
[Child23]]]
[, draw=red, before computing xy={s'+=10mm}, edge+={red}, edge path'={(!s) -- ()}]
]
\end{forest}
\end{document}