跳到主要內容

LaTeX 表格

在 tabular 環境中寫出每一列,儲存格之間用 &,每列結尾用 \\;需要標題和編號時,再把它放進 table 浮動體中。

第一個表格

表格以 \begin{tabular}{...} 開始。大括號中每一欄寫一個字母:l 表示靠左,c 表示置中,r 表示靠右。在表格內,& 移到下一個儲存格,\\ 結束這一列。

三欄、三種對齊方式

\begin{tabular}{lcr}
Fruit  & Colour & Price \\
Apple  & red    & 0.44 \\
Banana & yellow & 1.20 \\
\end{tabular}

你不需要在原始碼中把 & 符號對齊。它們周圍的空格會被忽略,所以只有在對齊能幫助你閱讀程式碼時才需要這麼做。

欄類型

欄位設定決定有幾欄,以及每一欄如何對齊。

字母意義在 Scissor LaTeX 中
l、c、r靠左、置中、靠右可用。
p{4cm}固定寬度的段落欄當成靠左對齊的欄。寬度會被忽略,所以長文字不會在 4 cm 處換行。
m{..}、b{..}array 套件的段落欄當成靠左對齊的欄;寬度會被忽略。
X(tabularx)會延伸填滿寬度的欄當成靠左對齊的欄。
|欄之間的垂直線可用。
@{..}、>{..}、<{..}儲存格周圍的間距和程式碼會被接受但忽略。

表格線:\hline 或 booktabs

\hline 會在表格中畫一條橫線,欄位設定中的 | 則會畫出垂直線。這樣就能做出傳統的框線樣式。

用 \hline 和 | 製作的框線表格

\begin{tabular}{|l|r|}
\hline
Name & Points \\
\hline
Erika Mustermann & 44 \\
John Doe & 38 \\
\hline
\end{tabular}

許多期刊偏好較少的線條。booktabs 套件提供三種線:表頭上方的 \toprule、表頭下方的 \midrule,以及結尾的 \bottomrule,而且沒有垂直線。

用 booktabs 呈現同樣的資料

LaTeX導言區: \usepackage{booktabs}在編輯器中開啟 (在新分頁中開啟)
\begin{tabular}{lr}
\toprule
Name & Points \\
\midrule
Erika Mustermann & 44 \\
John Doe & 38 \\
\bottomrule
\end{tabular}

標題、編號和參照

要為表格加上標題和編號,請把 tabular 放進 table 環境中。加上 \caption{...},並在它後面加上 \label{...}。這樣 \ref{...} 就能在文字中的任何地方印出表格的編號。

帶有標題的編號表格

LaTeX導言區: \usepackage{booktabs}在編輯器中開啟 (在新分頁中開啟)
\begin{table}[ht]
  \centering
  \caption{Points after the first round.}
  \label{tab:points}
  \begin{tabular}{lr}
    \toprule
    Name & Points \\
    \midrule
    Erika Mustermann & 44 \\
    Hans Mustermann  & 41 \\
    \bottomrule
  \end{tabular}
\end{table}

Table~\ref{tab:points} shows the points.
由 Scissor LaTeX 排版: 帶有標題的編號表格

標題會出現在你寫下它的位置:這裡是在表格上方,這也是表格標題的慣常位置。如果想把標題放在下方,請把 \caption 寫在 tabular 之後。

跨欄的儲存格

\multicolumn{n}{align}{text} 會把一列中的 n 個儲存格合併成一個,並使用它自己的對齊方式。常見的用法是在一組欄位上方放一個表頭。

橫跨兩欄的表頭

LaTeX導言區: \usepackage{booktabs}在編輯器中開啟 (在新分頁中開啟)
\begin{tabular}{lcc}
\toprule
       & \multicolumn{2}{c}{Round} \\
Name   & 1  & 2  \\
\midrule
Erika  & 44 & 40 \\
John   & 38 & 45 \\
\bottomrule
\end{tabular}

跨列的儲存格

在 LaTeX 中,multirow 套件的 \multirow{n}{*}{text} 會讓儲存格的高度超過一列。Scissor LaTeX 會保留文字,但不保留跨列:文字位於第一列,下方幾列的該欄則保持空白。

\multirow:文字留在第一列

LaTeX導言區: \usepackage{multirow,booktabs}在編輯器中開啟 (在新分頁中開啟)
\begin{tabular}{llr}
\toprule
Group & Name & Points \\
\midrule
\multirow{2}{*}{A} & Erika & 44 \\
                   & John  & 38 \\
\bottomrule
\end{tabular}

對大多數表格來說,這樣讀起來沒有問題。如果標籤應該在這幾列之間垂直置中,請改把它寫在中間那一列。

與 TeX 安裝環境的差異

這些在 TeX 安裝環境中也都能編譯,所以你在這裡寫的文件在那裡仍然可以使用。

相關內容:用 multirow 製作跨多列的儲存格,用 array、tabularx、longtable 設定欄寬,用 caption、subcaption 設定標題,以及在浮動體中了解位置安排。如果想用點選的方式建立表格,請使用 LaTeX 表格產生器。

常見問題

怎麼在 LaTeX 中為表格加上標題?

把 tabular 放在 \begin{table} ... \end{table} 中,並在裡面寫 \caption{Your text}。Scissor LaTeX 會為表格編號,並在標題前印出「Table 1:」。

為什麼我的長文字在 p 欄中不會換行?

Scissor LaTeX 目前還不會套用欄寬,所以 p{4cm} 欄的寬度等於其中最長的一行。請用 \newline 把長儲存格斷行,或把內容縮短。

怎麼在 LaTeX 表格中合併儲存格?

用 \multicolumn{2}{c}{text} 合併跨欄的儲存格。在 Scissor LaTeX 中,用 \multirow 向下合併列時會保留文字,但不保留跨列。

本頁的每個範例都在建置網站時由 Scissor LaTeX 排版。 最後更新:2026-11-07