我使用 pgf/tikz 绘制了一棵树,并试图将其放在枚举列表中。我的完整代码片段如下:
\subsection*{Problem 2}
\begin{enumerate}[1)]
\item Max heap
\item
\begin{tikzpicture}[level/.style={sibling distance=50mm/#1}]
\node [circle,draw] (z){98}
child {node [circle,draw] (a) {80}
child {node [circle,draw] (b) {23}
child {node [circle,draw] (c) {18}}
child {node [circle,draw] (d) {21}}
}
child {node [circle,draw] (g) {48}}
}
child {node [circle,draw] (j) {79}
child {node [circle,draw] (k) {76}}
child {node [circle,draw] (l) {29}}
};
\end{tikzpicture}
\end{enumerate}
我的问题是列表编号与 tikzpicture 的底部对齐。我该如何将其与 tikzpicture 的顶部对齐?
答案1
以下是一种方法:
\item \leavevmode\vadjust{\vspace{-\baselineskip}}\newline
\begin{tikzpicture}
答案2
只需添加baseline
:
\begin{tikzpicture}[level/.style={sibling distance=50mm/#1},baseline]
没有任何参数,baseline
取值0pt
,这很好,因为您的树向下生长。因此 y=0 位于顶部。
答案3
tikzpicture
您必须明确确定环境相对于当前线的基线。请参阅下面的示例。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{enumerate}
\item Max heap
\item
\begin{tikzpicture}[%
baseline=(current bounding box.north),
level/.style={sibling distance=50mm/#1}
]
\node [circle,draw] (z){98}
child {node [circle,draw] (a) {80}
child {node [circle,draw] (b) {23}
child {node [circle,draw] (c) {18}}
child {node [circle,draw] (d) {21}}
}
child {node [circle,draw] (g) {48}}
}
child {node [circle,draw] (j) {79}
child {node [circle,draw] (k) {76}}
child {node [circle,draw] (l) {29}}
};
\end{tikzpicture}
\end{enumerate}
\end{document}
答案4
提高数字的一个简单方法(这也是我经常做的)是在~\\
后面添加\item
。