LaTeX Wiki
Line 4: Line 4:
 
== Basic Example ==
 
== Basic Example ==
   
\begin{tabular}{l|l|l|l|}
+
\begin{tabular}{llll}
 
Header & Header & Header & Header \\
 
Header & Header & Header & Header \\
 
\hline
 
\hline

Revision as of 13:19, 20 April 2013

The tabular is the de-facto way of presenting tabular data in LaTeX.

Basic Example

\begin{tabular}{llll}
Header & Header & Header & Header  \\
\hline
data   & data   & data   & data    \\
data   & data   & data   & data    \\
data   & data   & data   & data    \\
data   & data   & data   & data
\end{tabular}

Columns are separated by &, and \\ ends a row.

Summary of results on the scaled spiral samples. D0 is the diameter of the spiral, while w and s are the width of the patterned lines and their separation. f0 is the resonant frequency in the PEC limit. Add columns for Tc
dd dd dd dd dd dd 3 8 9 0 -5 1
2 1 2 4 4 1
2 1 2 3 5 1
3 1 1 1 1 1
5 11 1 1 1 1
76 1 1 1 1 1
1 11 1 1 1 1

Advantages and Limitations

LaTeX doesn't require any packages to use tabular by itself, so tabular is ubiquitous. The limitations of tabular are that it doesn't add sufficient whitespace around cells. Though it's not a limitation, many users add unnecessary vertical lines and double lines to their tables.

The booktabs package has a few commands that vastly improve the quality of tabular's tables, and the documentation for booktabs has some advice on typesetting tables properly.

Column Definition

A tabular environment takes one required parameter, the column definition.

\begin{tabular}{lrcp{0.5in}}
left aligned & right aligned & centered & set in a 0.5 inch parbox.
\end{tabular}

To repeat a series of columns, *{num}{form} may be used, e.g. *{3}{lr} is the same as lrlrlr.

Not recommended (and does not work as expected with booktabs) is the use of | and || to add vertical and double-vertical lines between columns.

To add some common text between two columns, use @{text} in the column definition.

Lines / Rules

As shown in the example in the beginning, the \hline command draws a horizontal line after the header row. To draw a line between subsequent rows, use \cline.

It is not necessary to draw a line between every row in a table.

Layout

A tabular environment is rendered inline as a single large character. An optional parameter controls the position of the float. By default, a tabular is aligned vertically centered with the text baseline.

\begin{tabular}[t]{lll}

The above example would align the top of the tabular with the text baseline, a b would align the bottom.

Floating tabular

To make the table float, simply include it in a table environment or a figure environment.

\begin{table}
\caption{Caption needs to be before the label.}
\centering
\begin{tabular}{lll}
...
\end{tabular}
\label{tbl:tablelabel}
\end{table}

See example at \autoref{tbl:tablelabel}.

The \centering command may be preferable to the center environment in a float, as the center environment will add a paragraph and create extra whitespace in the float.

A tabular environment may be nested within a minipage to allow side-by-side tables within a table or figure environment, or to place an image next to a table.

\begin{figure}
  \begin{minipage}{2in}
    ... image ...
  \end{minipage}
  \qquad
  \begin{minipage}{2in}
    \begin{tabular}{lll}
      ... table ...
    \end{tabular}
  \end{minipage}
\end{figure}

Other packages

  • The ctable package allows captioned floating tables, with table footnotes properly laid out. It is also somewhat less wordy.
  • For an alternative approach to side by side tables, try the subfigure package. This also removes the need for specifying subtable width.
  • For handling tables that span pages, longtable.
  • The tabularx package

External links