I suppose I should start with the subject that made me start this blog in the first place: formatting tables. Now I'm sure this is the first in a series of posts on tables, as anyone who has worked with them knows how finicky they can be.

The two aspects of tables I'm explaining today are the column and row separation values. For those that are looking for quick fixes, I'll give them to you right away:

Column Width: \tabcolsep

Usage: \renewcommand\tabcolsep{6pt}

Explanation: tabcolsep is HALF the space between two columns. Default value is 6pt

Row Height: \arraystretch

Usage: \renewcommand\arraystretch{1}

Explanation: arraystretch is a FACTOR representing the distance between two rows. Default is 1

The two variables are manipulated in different ways: tablecolsep is a unit, so it can be specified in a variety of ways (pt, ex, em, etc...) which arraystretch is a factor, so it has no units.

The code demonstrates how to manipulate the variables, using beamer slides.

\documentclass{beamer}

\begin{document}

\begin{frame}[fragile]

\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}\hline

1 & 2 &3 &4 &5 &6 &7 &8 &9 & a &b &c &d &e &f \\\hline

Wide Column & & & & & & & & & & & & & & \\\hline

\end{tabular}

\renewcommand\arraystretch{1.1}

\renewcommand\tabcolsep{3pt}

\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}\hline

1 & 2 &3 &4 &5 &6 &7 &8 &9 & a &b &c &d &e &f \\\hline

Wide Column & & & & & & & & & & & & & & \\\hline

\end{tabular}

\renewcommand\arraystretch{0}

\renewcommand\tabcolsep{0pt}

\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}\hline

1 & 2 &3 &4 &5 &6 &7 &8 &9 & a &b &c &d &e &f \\\hline

Wide Column & & & & & & & & & & & & & & \\\hline

\end{tabular}

\renewcommand\arraystretch{2}

\renewcommand\tabcolsep{6pt}

\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}\hline

1 & 2 &3 &4 &5 &6 &7 &8 &9 & a &b &c &d &e &f \\\hline

Wide Column & & & & & & & & & & & & & & \\\hline

\end{tabular}

\end{frame}

\end{document}

Which produces these slides