4. LaTeX 表格样式与常用表格类型 |
您所在的位置:网站首页 › 如何添加表格的抬头符号 › 4. LaTeX 表格样式与常用表格类型 |
LaTeX 表格格式与常用表格类型
在论文写作过程中,经常需要通过表格化的方式呈现一些数据,LaTeX 所有的宏包文件都要写在 \documentclass 命令之后和 \begin{document} 之前。在本文中,会用到与 LaTeX 表格相关的宏包如下: \documentclass{article} \usepackage{booktabs} %% 三线表 \usepackage{diagbox} %% 斜线表头 \usepackage{multirow} %% 合并单元格 \begin{document} \title{ ... } \author{ ... } \date{...} \maketitle ... \end{document} 1. 表格的基本使用表格的基本模板详解: \begin{table}[!h] \renewcommand{\arraystretch}{1.3} \caption{An Example of a Table} \label{table_example} \centering \begin{tabular}{|c|c|} \hline One & Two \\ \hline Three & Four\\ \hline \end{tabular} \end{table}效果如下: 表格和图片的插入很多地方都是一致的,下面我们说一下不同的语法: 1、框架 \begin{table}[!h] \end{table}整体大框架明确了表格的开始 (\begin) 和结束 (\end) 的位置,table 说明插入的是图片。[!h] 是表格的摆放格式,所有的格式和图片一致。 [h] 当前位置(here):h 表示你在编写的时候中在哪里,论文最终显示图片的位置就在哪里,但是如果这一页的空间不足以放下这个图片,此时图片会转到下一页;[t] 顶端(top):t 表示优先将图片放置在页面对应排的顶部;[b] 底端(bottom):b 表示优先将图片放置在页面对应排的底部;[p] 浮动:将图片设置为浮动状态,系统会自动排版图片的位置;2、行高 \renewcommand{\arraystretch}{1.3}这一段设置的表格的行高。如果我们将 1.3 修改成 3,就变成了如下图: 3、标题与标签 \caption{An Example of a Table} \label{table_example}caption 是图像的标题。{ } 中就是标题的具体内容,标题还会有编号,一般都是自动编号。label 是标签,标签主要是在引用的时候被用到。 4、居中展示 \centeringcentering 表示将表格居中显示,用在图片里则表示图片的居中展示。 但是如果表格的宽度超过了当前排的宽度,它就会越过去。 如果是这样的话,我们就要讲图片设置为页面浮动格式了,需要在上面的框架table 后面添加 *,这样的话表格就会横跨论文页面的两栏。 5、表格内容 \begin{tabular}{|c||c|} \hline One & Two \\ \hline Three & Four\\ \hline \end{tabular}这一整块就是表格的内容了。下面的语句表示表格内容的开始和结束: \begin{tabular}{|c||c|} \end{tabular}{|c|c|} 表示的是表格中内容的样式和竖边框线。有两个 columns,说明这个表格有两列,第一个 columns 的左边有一个竖线,说明表格有左边框线,两个 columns 之间有两个竖线,说明中间的分隔线是双线,后面 columns 的右面有一个竖线,说明表格有右边框线。 我们还可以把 c 换成 l 或者 r: l:l 表示 left,即左对齐;c:c 表示 center,即居中;r:r 表示 right,即右对齐;hline 表示该边框是有实线的,如果没有 hline,就表示这行没有边框横线。 如果我们希望部分有实线,部分没有呢? 我们希望在第二行的第 1 列、第 3 列 和第 5 列有横向,可以这样写: \cline{1-1} \cline{3-3} \cline{5-5}; \begin{table*}[!h] \renewcommand{\arraystretch}{1.2} \caption{An Example of a Table} \label{table_example} \centering \begin{tabular}{c c c c c} \hline A & B & C & D & E \\ \cline{1-1} \cline{3-3} \cline{5-5} 1 & 2 & 3 & 4 & 5 \\ 1 & 2 & 3 & 4 & 5 \\ \hline \end{tabular} \end{table*}说明:表格中的每一列的内容,要用 & 隔开,一行结束,要用 \\ 符号换行。 2. 表格的引用表格的引用要用到命令 ref,例如我们要引用上面的表格,就可以这样调用: As show in tabel \ref{table_example}, it explains that ... 3. 常用表格类型1、三线表 三线表是常用的一类表格,根据上面介绍的表格的基础模板,我们可以很简单写出一个三线表的示例: \begin{table}[!h] \renewcommand{\arraystretch}{1.2} \caption{An Example of a Table} \label{table_example} \centering \begin{tabular}{c c c c c} \hline A & B & C & D & E \\ \hline 1 & 2 & 3 & 4 & 5 \\ 1 & 2 & 3 & 4 & 5 \\ \hline \end{tabular} \end{table}这个是最简单的三线表,如果我们希望最上面和最下面的横线更粗一些呢? 导入三线表的宏包:\usepackage{booktabs} 然后改写代码中横线的部分: \begin{table}[!h] \renewcommand{\arraystretch}{1.2} \caption{An Example of a Table} \label{table_example} \centering \begin{tabular}{c c c c c} \toprule A & B & C & D & E \\ \midrule 1 & 2 & 3 & 4 & 5 \\ 1 & 2 & 3 & 4 & 5 \\ \bottomrule \end{tabular} \end{table}2、斜线表头 斜线表头需要引入宏包:\usepackage{diagbox} 斜线表头主要是一个单元格分成两块或三块: \diagbox{A1}{A2} %% 分成两块,分别是A1和A2 \diagbox{A1}{A2}{A3} %% 分成三块,分别是A1、A2和A3然后我们把这个当成一个单元格写进去。 \begin{table}[!h] \renewcommand{\arraystretch}{1.2} \caption{An Example of a Table} \label{table_example} \centering \begin{tabular}{|c|c|c|c|c|} \hline \diagbox{A1}{A2}{A3} & B & C & D & E \\ \hline a1 & 2 & 3 & 4 & 5 \\ \hline a2 & 2 & 3 & 4 & 5 \\ \hline a3 & 2 & 3 & 4 & 5 \\ \hline \end{tabular} \end{table}执行的效果如下: 3、单元格的合并 单元格的合并需要用到一个包:\usepackage{multirow} 直接通过一个例子来讲解: \begin{table}[!h] \renewcommand{\arraystretch}{1.2} \caption{An Example of a Table} \label{table_example} \centering \begin{tabular}{|c|c|c|c|c|} \hline \multicolumn{2}{|c|}{\multirow{2}{*}{A}} & \multicolumn{3}{c|}{B} \\ \cline{3-5} \multicolumn{2}{|c|}{} & B1 & B2 & B3 \\ \hline 1 & 2 & 3 & 4 & 5 \\ \hline \end{tabular} \end{table}从分隔符 & 与 换行符 \\ 的数目,我们就知道这个是一个三行五列的表格。我们发现,第一行只有一个 & ,说明第一行只有两个单元格,第二行有3个 & ,说明第二行有4个单元格。 \multicolumn{2}{|c|}{\multirow{2}{*}{A}} 用到了两个命令: \multicolumn{}{}{};\multirow{}{}{};第一个命令是多列合并,第二个命令是多行合并,如果是嵌套使用,那就是多行多列合并。 每个大括号内容的含义如下: 第一个大括号是要合并的数量,用到第一个命令中就是要合并多少列,用到第二个命令中就是要合并多少行。第二个大括号是行中每列数据的格式及对应的边框线。合并行的格式一般都默认是遵循前面的,写*。第三个大括号是当前单元格的内容。这种合并方式读起来很麻烦,而且很不容易理解,别说是读者了,作者写起来也感觉非常复杂,那么这种单元格合并是否有比较好的解决办法呢?有的! 在线表格生成工具:https://www.tablesgenerator.com/ Step1:选择表格大小; 点击【Column】和【Row】可以在选择的表格中向左、向右添加列,向上、向下添加行,还包括表格的基本样式(边框、文字居中、加粗等) Step2:合并和分割单元格,选中对应的行或列上的单元格,【merge cells】; Step3:然后点击一键生成即可; 这一部分的笔记整理成PDF上传到了百度网盘,提取码:6666. --来自百度网盘超级会员V2的分享 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |