1. 最小の表 — tabular

表は tabular 環境で書きます。 追加パッケージは不要 (罫線を綺麗にしたければ後述の booktabs)。

source
\begin{tabular}{ll}
  名前 & 値 \\
  光速 & 3.00e8 \\
  重力定数 & 6.67e-11 \\
\end{tabular}
result
名前
光速3.00e8
重力定数6.67e-11
  • {ll} = 列数ぶんの文字。l が 2 つなので 2 列
  • & が列の区切り
  • バックスラッシュ 2 つが行の区切り

2. 列の寄せ方 — l / c / r

こんなとき使う: 名前は左寄せ、数値は中央か右寄せにしたい。 列の寄せ方は tabular の引数に 1 文字ずつ並べて指定します。

  • l — 左寄せ (left)
  • c — 中央寄せ (center)
  • r — 右寄せ (right)
source
\begin{tabular}{lcr}
  左寄せ & 中央寄せ & 右寄せ \\
  apple  & banana   & cherry \\
\end{tabular}
result
左寄せ 中央寄せ 右寄せ
apple banana cherry

列数と寄せ方は {l l r} のように 1 文字ずつ、 スペースを入れても入れなくても同じに解釈されます ({llr})。

演習 #1

「名前 / 値 / 単位」の 3 列の表を、左寄せ・中央寄せ・右寄せで並べて書いてみよう。

解答を見る

列指定を lcr にします。

\begin{tabular}{lcr}
  名前 & 値     & 単位 \\
  光速 & 3.00e8 & m/s \\
  重力 & 9.80   & m/s^2 \\
\end{tabular}

ポイント:

  • l / c / r を列数ぶん並べるだけ
  • 寄せ方を変えたければ llrcll など組み合わせ自由

3. 横線 — hline と booktabs

こんなとき使う: 表に罫線を入れたい。 書き方は 2 通りあり、仕上がりがかなり違います。

A. base LaTeX だけで書く (hline)

source
\begin{tabular}{ll}
  \hline
  名前 & 値 \\
  \hline
  光速 & 3.00e8 \\
  重力 & 6.67e-11 \\
  \hline
\end{tabular}
result
名前
光速3.00e8
重力6.67e-11
  • \hline を入れたい位置に挿入するだけ
  • どこにでも書ける反面、全部同じ太さで単調になりがち

B. booktabs パッケージ (推奨)

source
% プリアンブル
\usepackage{booktabs}

% 本文
\begin{tabular}{ll}
  \toprule
  名前 & 値 \\
  \midrule
  光速 & 3.00e8 \\
  重力 & 6.67e-11 \\
  \bottomrule
\end{tabular}
result
名前
光速3.00e8
重力6.67e-11
  • \toprule — 一番上の太めの線
  • \midrule — 見出しと内容の区切り
  • \bottomrule — 一番下の太めの線
  • 太さが 3 段階あるので、見出し/内容の区別が視覚的に伝わる
  • 論文・教科書はほぼこのスタイル。迷ったらこちらを使えば間違いない

4. 縦線 — 使う?使わない?

列指定に | (パイプ) を入れると縦線が引けます。

source
\begin{tabular}{l|l}
  名前 & 値 \\
  \hline
  光速 & 3.00e8 \\
\end{tabular}
result
名前
光速 3.00e8

ただし、研究論文の表ではほぼ使いません。 booktabs の設計思想は「縦線は目を妨げる」で、 学術系のスタイルガイドもほぼ縦線なし。 プレゼン資料やレポートで「枠を付けたい」ときだけ使うのが穏当です。

5. キャプション (タイトル)

こんなとき使う: 表に「表 1: 物理定数」のようなタイトルをつけたい。 tabulartable 環境で包んで、 \caption{...} を入れます。

source
\begin{table}[h]
  \centering
  \caption{物理定数}
  \label{tab:constants}
  \begin{tabular}{ll}
    \toprule
    名前 & 値 \\
    \midrule
    光速 & 3.00e8 \\
    \bottomrule
  \end{tabular}
\end{table}
result
表 1: 物理定数
名前
光速3.00e8
  • \caption表の上に書くのが慣習 (図の場合は下)
  • \label{tab:...} を付けておけば、本文で 表~\ref{tab:constants} と参照できる
  • [h] は「ここに置きたい」の指示。他に t (上), b (下), p (別ページ)

6. 中央寄せ

表を紙面の中央に配置したいときは、table 環境の中で \centering を入れます。

source
\begin{table}[h]
  \centering
  \caption{タイトル}
  \begin{tabular}{ll}
    ...
  \end{tabular}
\end{table}
result
表 1: タイトル
列 A列 B
  • \centering は環境内でだけ有効 (一時的な中央寄せ)
  • 似た書き方に \begin{center}...\end{center} があるが、余分な縦スペースが入るので非推奨
演習 #2

上のデータに booktabs で罫線を入れて、キャプション「物理定数」を付けて中央寄せに配置してみよう。

解答を見る

table 環境で包んで \centering\caption を入れ、中身は booktabs で書きます。

\usepackage{booktabs} % プリアンブルに

\begin{table}[h]
\centering
\caption{物理定数}
\begin{tabular}{lcr}
\toprule
名前 & 値 & 単位 \\
\midrule
光速 & 3.00e8 & m/s \\
重力 & 9.80 & m/s^2 \\
\bottomrule
\end{tabular}
\end{table}

ポイント:

  • table 環境が「表ブロック」、その中の tabular が「中身」
  • \centering は table 環境の中で書くこと (tabular の中ではない)
  • \caption は表の上に入れるのが普通

7. 列幅を指定して折り返す

こんなとき使う: セルに長い説明文を入れて自動改行したい。 固定幅の列は p{幅} で指定します。

source
\begin{tabular}{lp{5cm}}
  用語 & 説明 \\
  LaTeX & 文書組版システム。書きたい内容と見た目を分離して扱える。\\
\end{tabular}
result
用語 説明
LaTeX 文書組版システム。書きたい内容と見た目を分離して扱える。
  • p{5cm} = 5cm 幅の段落列 (自動で折り返す)
  • 数値は cm, mm, pt, \textwidth の倍率でも指定可能
  • 寄せ方を指定したければ m{幅} (上下中央) や b{幅} (下寄せ) もある