如何在 LaTeX 中創建一個以單個數字開始並以任意數量的箭頭延伸的樹結構,這些箭頭將下面的數字與上面的數字連接起來,使得頭部朝上?例如,這種形式的樹:
我看到有類似的樹沒有如圖所示的定向箭頭這裡。同樣,我看到有些樹有方向箭頭,但與所示的不相似這裡。有沒有辦法在 tikz 中將這兩個元素結合起來?
是否只是從足夠的元素中複製以下元素\usepackage{tikz,forest}
,或者是否需要完全不同的元素?
\documentclass{article}
\usepackage{tikz,forest}
\begin{document}
\texttt{grow} used in a Ti\textit{k}Z tree
\begin{tikzpicture}
\node{1}
child{node{child 1}}
child[grow=south]{node{child 2}
child child child
}
;
\end{tikzpicture}
end{forest}
end{document}
答案1
這是一個森林自動對節點進行編號的解決方案:
\documentclass[tikz,border=5pt]{standalone}
\usepackage{forest}
\begin{document}
\bracketset{action character=@}% based on code from page 22 of forest's manual
\newcount\xcount
\def\x{@@\advance\xcount1
\edef\xtemp{$\noexpand{\the\xcount}$}%
\expandafter\bracketResume\xtemp
}
\begin{forest}
delay={%
content={#1}%
},
for tree={%
edge path={
\noexpand\path[<-, \forestoption{edge}]
(!u.parent anchor) -- (.child anchor)\forestoption{edge label};
},
}
@+
[\x
[\x
[\x
[\x
[\x]
[\x]
[\x]
]
[\x
[\x]
[\x]
]
[\x
[\x]
]
]
[\x]
]
]
\end{forest}
\end{document}
答案2
您可以使用以下命令嘗試最新 PGF 中的新圖形內容lualatex
:
\documentclass[tikz,border=5]{standalone}
\usetikzlibrary{graphs,graphdrawing,arrows.meta}
\usegdlibrary{trees}
\begin{document}
\begin{tikzpicture}[>=Stealth]
\graph [tree layout, grow=down]{
1 <- 2 <- {
3 <- {
5 <- {10,11,12}, 6 <- {13,14}, 7 <- {,15}
},
4 <- {,/}
};
};
\end{tikzpicture}
\end{document}