我有一些用 tikz 绘制的树,我想添加一些与它们相关的文本。我可以使用\caption
within figure
,但不能tikzpicture
。
更新:谢谢你的建议。figure
似乎将我的第一张图片放在页面底部,将第二张图片放在第二页。我希望这些图片像以前一样靠近段落tikzpicture
。有什么想法吗?
\par
Suppose we enter keys into a red-black tree in this order: 33, 47, 51, 50.
\begin{figure}
\begin{tikzpicture}
\node [blacknd] {33}
child{ node [extnd] {}}
child{ node [extnd] {}
}
; \end{tikzpicture}
\caption{We start by adding 33 to an empty tree}
\end{figure}
\begin{figure}
\begin{tikzpicture}
\node [blacknd] {33}
child{ node [extnd] {} }
child{ node [rednd] {47}
child{ node [extnd] {} }
child{ node [extnd] {} }
}
; \end{tikzpicture}
\caption{Then we add node 47. There are no imbalances to fix, since the new node's parent is black.}
\end{figure}
更新:我从这里的优秀页面找到了答案:http://en.wikibooks.org/wiki/LaTeX/Floats,_Figures_and_Captions#Figures
我正在寻找的是“h”位置说明符。
答案1
您需要将 放在tikzpicture
中figure
;下面正确显示标题:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usepackage{caption}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[object/.style={thin,double,<->}]
\draw[object] (7cm,-1cm) -- (6cm,-2cm) node[midway,above] {a label};
\end{tikzpicture}
\caption{A caption.}
\end{figure}
\end{document}
答案2
我知道这个问题已经很老了并且已经解决了,但这里有一个额外的提示:您可以尝试使用包“capt-of”为任何类型的图形生成标题。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usepackage{capt-of}
\begin{document}
\begin{tikzpicture}[object/.style={thin,double,<->}]
\draw[object] (7cm,-1cm) -- (6cm,-2cm) node[midway,above] {a label};
\end{tikzpicture}
\captionof{figure}{A caption.}
\end{document}
答案3
如果你发现自己经常使用 [h!] 选项,那么你需要考虑是否真的想使用图形。图形应该能够浮动,这样它就可以进入一个看起来不错的位置,而不是你引用它的位置。如果你知道你肯定希望图片位于你引用它的位置,那么可以考虑简单地将图片包含在内联中。
看看有些书上是怎么写的。我使用 Knuth 的《计算机编程艺术》来了解布局等,TeX 书可能更好,但我没有。