答案1
右边的图不是树,因为一个子节点有多个父节点。因此,它不能在 Forest 中开箱即用地绘制。但是,您可以通过操作以下操作让 Forest 绘制循环:edge path
、使用tikz
或添加 Ti让 Forest 绘制循环钾Z 命令直接在forest
环境内部。
\documentclass[border=10pt]{standalone}
\usepackage{forest}
\usepackage{mathtools}
\begin{document}
\begin{forest}
for tree={
grow=north,
},
where n children=0{tier=terminus}{},
[$\oplus$
[$\otimes$
[]
[, phantom]
]
[, edge path'={(!r1.parent anchor) -- (.child anchor) (!rl.parent anchor) -- (.child anchor)}, child anchor=south]
[$\otimes$
[, phantom]
[]
]
]
\end{forest}
\end{document}
如果你只需要奇数的非树位,这应该没问题。但是,如果你需要许多循环,你将需要使用对通用图的支持,避免使用专注于树的包和库。考虑 Ti钾在这种情况下提供 Z 图表。