14

What is the correct way to label and captionize a tkizpicture inside a tabular environment? (Since figures are not allowed inside a tabular)

Excerpt from my .tex:

\begin{tabular}{l r}

&
   \begin{tikzpicture}
   ... % I want to label this tikzpicutre and give it a nice caption
   \end{tikzpicture}
\end{tabular}

Outside the tabular I would have done it like this:

   \begin{figure}
   \begin{tikzpicture}
   ... 
   \end{tikzpicture}
   \label{fig:...}\caption{...}
   \end{figure}

Basically I want to create a page that looks like this:

----------------------------
|Text Text    TKIZ    TKIZ |
|TextText     TKIZ    TKIZ |
| Text Text   Figure X: ...|
|                          |
|This text is under the    |
|table and references above|
|TKIZ Figure with \ref{..} |
----------------------------
Stefan Kottwitz
  • 231,401
Chris
  • 4,055
  • The "correct" way depends on a lot of factors, including what else is in the tabular (and perhaps why a tabular is needed in the first place). Can you explain your exact problem a little more? – ESultanik Dec 02 '10 at 21:55

1 Answers1

14

I recommend to use the \captionof command of the caption package (or load the tiny capt-of package instead). This command produces captions within other environments than figure or table and even lists them in the list of figures resp. tables.

Here's a complete example for demonstration:

\documentclass{article}
\usepackage{tikz}
\usepackage{caption}
\begin{document}
\listoffigures
\bigskip
\section*{Test table}
\begin{tabular}{lp{4cm}}
Text text text &
   \begin{tikzpicture}
     \draw (0,0) -> (4,0);
   \end{tikzpicture}
   \captionof{figure}{Sample picture}
   \label{tikz}
\end{tabular}

See fig. \ref{tikz}.
\end{document}

alt text

Btw. use \label after \caption, unlike in the example in your question.

Stefan Kottwitz
  • 231,401