LATEX 表格

2025年3月17日 | 阅读11分钟

表格是学术写作中常见的组成部分。本主题将解释创建表格和执行不同表格功能的步骤。表格是表示信息的有效方式,在大多数文档或文件中都很常用。在讨论科学论文时,表格用于呈现数据。

与其他的软件相比,在 Latex 中创建表格稍微复杂一些。但是,这里的基础步骤和创建表格的过程将使过程更容易。

Latex 不是电子表格,但它是创建表格并将其导出到文档的专用工具。

Latex 中的表格是结合使用 tabular 环境和 table 环境创建的。tabular 环境包含表格的实际内容,而其他环境则包含标题。

用于创建 table 环境的命令是:

\begin{table}{位置}

\end{table}

用于创建 tabular 环境的命令是:

\begin{tabular}{lcr}

\end{tabular}

这里,table 指的是 tabular 环境,以及 \caption 命令。位置 命令用于确定表格的位置。例如,\begin{table}{t} 表示表格将出现在页面的顶部

tabular 环境使用 &(和号)符号分隔列。

用于将内容左对齐、居中和右对齐的字母分别是 l、c 和 r,分别用于每一列。用于对齐的命令是 \begin{tabular}{l c r}

用于绘制分隔表格列的垂直线的命令是 \begin{tabular}{l|c|r},其中 (|) 作为参数传递。| 符号用于在列之间绘制垂直线。

您也可以使用 \vline 命令绘制垂直线。\vline 命令会绘制与行高相等的垂直线。

如果要绘制一条水平线作为行分隔符,则可以使用 \hline 命令。

\cline{i-j} 命令用于绘制从 i 开始到 j 结束的部分水平线。

让我们通过使用上述命令来看几个表格的示例。

1.

输出

Latex TABLE

2.

输出

Latex TABLE

3.

输出

Latex TABLE

现在,看一下下面创建基本表格的代码。

4.

说明

  • \label 命令用作表格的标记或标签。
  • \caption 包含在表格本身中。

\begin{center}… \end{center} 的位置,可以在文档\table 的开头使用 \centering 命令。

输出

Latex TABLE

合并行和列

对于合并的列,使用 \multicolumn{数量}{}{文本} 命令。数量 命令用于将 数量 列合并为具有宽度的单列。 命令包含 l、c 或 r 符号。文本 包含该列的内容。

对于合并的行,使用 \raisedbox{提升量}{文本} 命令。它会打印 文本,该文本会比当前基线高出 提升量。对于行之间的单个空格,使用 [-lex] 命令。对于第一行和第二行之间的双倍空格,使用 [1ex] 命令。

您还可以使用 *{num}{str} 语法来对齐许多相同的列。当您的表格有许多列时,这很有用。命令将写为

\begin{tabular}{1*{6}{c}r}

让我们看一个例子。代码如下。

输出

Latex TABLE

您还可以通过使用 \usepackage{adjustbox} 命令将模式更改为横向模式。

这里的表格以 \begin{adjustbox} 开始,以 \end{adjustbox} 结束。

让我们看一个简单的表格示例来理解这一点。

代码如下所示

输出

Latex TABLE

例如,如果我们使用与上面相同代码中的角度设置为 150 度,则输出将类似于下图。

Latex TABLE

下面解释了用于创建表格的一些常用命令。

  • array:它添加了 m{<宽度>} 和 b{<宽度>} 列,类似于 p 命令,但垂直对齐在中心或底部。
  • bookstab:它提供了用于具有上下间距的水平线的创意命令。
  • tabularx:它引入了 X 列类型,其功能类似于 p- 命令,并具有自动计算宽度的功能。
  • \raggedright:它被识别为表格行的结束。
  • \tabularnewline:此命令用于代替 \\.
  • \arraybackslash:它用于恢复过程。

对于列之间的空格,使用 \setlength{\tabcolsep}{5pt} 命令。默认大小为 6pt。此命令插入在列之间以进行间距调整。

对于行之间的空格,使用 \arraystretch 命令。

表格中的文本换行

Latex 算法存在一些不足。如果文本超出页面宽度,Latex 不会自动调整/换行。为此,使用特殊的命令 p(预定义宽度)来设置宽度。

示例如下。

此示例解释了两种过程:不设置宽度和设置宽度。您可以注意到这两种方法之间的区别。

  • 第一种过程(不指定宽度}

代码如下所示

输出

Latex TABLE

您可以注意到,信息未显示,因为未指定宽度。

  • 现在考虑第二种过程,其中使用 p 指定了宽度。代码如下。

输出

Latex TABLE

多行和多列

它用于格式化包含多行多列的数据。在此,使用 multirow 包将多行拆分为子行。

注意:在 multirow 环境中的列换行将无法与使用的语法一起使用。

让我们通过一个例子来理解。代码如下。

输出

Latex TABLE

您可以使用 \hline 命令绘制任意多的线条。请参考上面的类似图像,但带有更多线条。

Latex TABLE

带 booktabs 的表格

booktabs 命令用于使文档更具专业性,因为 \hline 命令做不到。bookstab 包提供的 toprulemidrulebottomrule 等命令用于代替 \hline 命令。

bookstab 包的代码如下。

输出

Latex TABLE

多页表格

如果您的表格包含多行,表格将在底部被裁剪。longtable 命令用于使表格跨越多页,并且必须将其添加到包中。

当使用 longtable 命令时,不需要使用 tabletabular 命令。它取代了 table 和 tabular 命令的使用,并将两个环境合并为一个。因此,而是使用 longtable 环境来创建表格。

上述主题的代码如下。

说明

  • \endfirsthead:这是出现在第一页表格顶部的行。
  • \endhead:出现在除第一页之外的每一页顶部的行。
  • \endfoot:出现在除最后一页之外的每一页底部的行。
  • \endlastfoot:这是出现在表格末尾的行。

输出

上述代码的输出将在两页中列出,如下所示。

这两页被分为三张图片。

图片如下。

Latex TABLE
Latex TABLE

您可以注意到,表格已使用 longtable 列被分成多页,并且没有任何数据丢失。

对齐小数点

下面讨论的示例将根据小数点对齐表达式和相应的值。

代码如下所示

输出

Latex TABLE

表格内容

有两种环境用于表格内容:tabbing 环境 (\begin{tabbing}…\end{tabbing}) 和 tabular 环境 (\begin{tabular}…\end{tabular})。

tabular 允许使用用于绘制水平线和垂直线的命令创建精美的环境。但是,表格不能分页。为此,使用 table 命令将表格分页,如上所述。

tabbing 环境用于设置制表符,其行为类似于打字机。设置的制表符然后从一个移动到另一个。由于 tabbing 环境中的每一行都是单独处理的,因此允许在 tabbing 中进行分页。

用于 tabbing 的命令列在下面。

  • \= 设置制表位
  • \> 移动到下一个制表位
  • \\ 终止一行
  • \kill 带有此命令的行用于设置制表符,但不打印该行。

tabbing 环境的两个示例如下。

1. 此示例的代码如下。

在这里,我们为两个新行使用了两个 \\

输出

Latex TABLE

2. 第二个示例的代码如下。

输出

Latex TABLE
下一主题Latex 颜色