Latex中经典三线表、多线表、内容跨行/跨列复杂表的详解与源代码

您所在的位置:网站首页 p怎么占格英语 Latex中经典三线表、多线表、内容跨行/跨列复杂表的详解与源代码

Latex中经典三线表、多线表、内容跨行/跨列复杂表的详解与源代码

2023-08-28 04:54| 来源: 网络整理| 查看: 265

一、经典三线表

1.1 效果图

1.2 分析

经典三线表主要采用booktabs宏包中提供的三个命令,即\toprule、\midrule以及\bottomrule来实现。通俗的讲,\toprule、\midrule以及\bottomrule命令实现的功能是画三线表中的上中下三道线,我们只需要在三条线之间填充内容。同行不同列的内容用&符号隔开,不同行之间用换行符\\实现。

画表的整体思路如下:用\toprule命令画第一道线——>输入第一行的内容“Item1&Item2&Item3&Item4”与回车符\\——>利用\midrule命令画第二道横线——>输入第二行内容“Data1&Data2&Data3&Data4”与回车符\\——>输入第三行内容“Data5&Data6&Data7&Data8”与回车符\\——>利用\bottomrule命令画第三道横线。至此,整个经典三线表已经画完。

1.3 具体实现代码及详细注释

\documentclass{article} \usepackage{float}%提供float浮动环境 \usepackage{booktabs}%提供命令\toprule、\midrule、\bottomrule \begin{document} %经典三线表 \begin{table}[H] \caption{\textbf{Example 1}}%标题 \centering%把表居中 \begin{tabular}{cccc}%四个c代表该表一共四列,内容全部居中 \toprule%第一道横线 Item 1&Item 2&Item 3&Item 4 \\ \midrule%第二道横线 Data1&Data2&Data3&Data4 \\ Data5&Data6&Data7&Data8 \\ \bottomrule%第三道横线 \end{tabular} \end{table} \end{document}

二、 多线表

2.1 效果图

 

2.2 分析

对于\toprule、\midrule以及\bottomrule命令,最常见的用法为经典三线表,但偶然一次帮导师排版论文时用到多线表,于是突发奇想利用经典三线表命令制作多线表,事实证明是可行的。在利用经典三线表命令制作多线表时需要注意,画第一道线的\toprule命令与画最后一道线的\bottomrule命令是固定不变的,中间其他的线用\midrule画即可。

画表具体思路如下(以画四线表为例):用\toprule命令画第一道线——>输入第一行的内容“Item1&Item2&Item3&Item4”与回车符\\——>利用\midrule命令画第二道横线——>输入第二行内容“Data1&Data2&Data3&Data4”与回车符\\——>利用\midrule命令画第三道横线—>输入第三行内容“Data5&Data6&Data7&Data8”与回车符\\——>利用\bottomrule命令画第三道横线。至此,整个经典四线表已经画完。

2.3 具体实现代码及详细注释

\documentclass{article} \usepackage{float}%提供float浮动环境 \usepackage{booktabs}%提供命令\toprule、\midrule、\bottomrule \begin{document} %经典四线表 \begin{table}[H] \caption{\textbf{Example 2}}%标题 \centering%把表居中 \begin{tabular}{cccc}%四个c代表该表一共四列,内容全部居中 \toprule%第一道横线 Item 1&Item 2&Item 3&Item 4 \\ \midrule%第二道横线 Data1&Data2&Data3&Data4 \\ \midrule%第三道横线 Data5&Data6&Data7&Data8 \\ \bottomrule%第四道横线 \end{tabular} \end{table} \end{document}

三、内容跨行表

3.1 效果图

3.2 分析

通过上图可以看出,“Item1”、“Item2”、“Item3”均占据了两行内容,即产生了所谓的“内容跨行”。在这种情况下要引进宏包multirow所提供的命令\multirow{}{}{},该命令有三个参数,第一个参数为所跨行数,第二个参数为表格宽度,第三个参数为跨行内容。

在该例中,将两道横线中间的部分看做一个“大行”,第一个大行内部又分为上下两个“小行”。在上边的小行中,各列内容从左往右依次为:Item1、跨两行的Item2、跨两行的Item3、跨两行的Item4。在下边的小行中,各列的内容依次为:number、空白、空白、空白。注意,在第一小行与第二小行之间要采用换行符\\,对于没有跨行内容的大行可按常规思路写。

3.3 具体实现代码及详细注释

\documentclass{article} \usepackage{float}%提供float浮动环境 \usepackage{booktabs}%提供命令\toprule、\midrule、\bottomrule \usepackage{multirow}%提供跨行命令\multirow{}{}{} \begin{document} %经典三线表 \begin{table}[H] \caption{\textbf{Example 3}} \centering \begin{tabular}{cccc}%四个c代表该表一共四列,内容全部居中 \toprule%第一道横线 Item1& \multirow{2}{*}{Item2}& \multirow{2}{*}{Item3}& \multirow{2}{*}{Item4} \\%表格宽度参数采用*代表自动宽度 number&&&\\ \midrule%第二道横线 Data1&Data2&Data3&Data4 \\ \midrule%第三道横线 Data5&Data6&Data7&Data8 \\ \bottomrule%第四道横线 \end{tabular} \end{table} \end{document}

四、内容跨列表

4.1 效果图

4.2 分析

通过上图可以看出,“Resultsummary”占据了两列内容,即产生了所谓的“内容跨列”。在这种情况下要引进宏包multirow所提供的命令\multicolumn{}{}{},该命令有三个参数,第一个参数为所跨列数,第二个参数为内容格式,第三个参数为跨列内容。

在该例中,将两道横线中间的部分看做一个“大行”,第一个大行内部又分为上下两个“小行”。在上边的小行中,各列内容从左往右依次为:空白、跨两列的Resultsummary、空白(两列空白加一个跨两列的内容,实际上总共也是占了四列的空间)。在下边的小行中,各列的内容依次为:Item1、Item2、Item3、Item4。注意,在第一小行与第二小行之间要采用换行符\\,对于没有跨行内容的大行可按常规思路写。

4.3 具体实现代码及详细注释

\documentclass{article} \usepackage{float}%提供float浮动环境 \usepackage{booktabs}%提供命令\toprule、\midrule、\bottomrule \usepackage{multirow}%提供跨列命令\multicolumn{}{}{} \begin{document} %经典三线表 \begin{table}[H] \caption{\textbf{Example 4}} \centering \begin{tabular}{cccc}%四个c代表有四列且内容居中 \toprule%第一道横线 &\multicolumn{2}{c}{Resultsummary}& \\%跨两列、内容居中、跨列内容为Resultsummary Item1&Item2&Item3&Item4 \\ \midrule%第二道横线 Data1&Data2&Data3&Data4 \\ \midrule%第三道横线 Data5&Data6&Data7&Data8 \\ \bottomrule%第四道横线 \end{tabular} \end{table} \end{document}

五、内容跨行、跨列多线复杂表

5.1 效果图

5.2 分析

对于第一大行,将其分为上下两小行。上边小行从左往右依次是:空白、占据两列且加粗加下划线的Resultsummary、空白(两列空白加一个占据两列的数据,总共实际也占四列)。下边小行分别是Item1、Item2、Item3、Item4。注意,两小行之间需要用换行符\\。

对于第二大行,仍将其分为上下两小行。上边小行从左往右依次是:占据两行的Data1、Data2、Data3、Data4。下边小行分别是空白、number2、number3、number4。注意,两小行之间需要用换行符\\。

对于没有出现内容跨行与跨列情况的大行可按正常四路写即可。

5.3 具体实现代码及详细注释

\documentclass{article} \usepackage{float}%提供float浮动环境 \usepackage{booktabs}%提供命令\toprule、\midrule、\bottomrule \usepackage{multirow}%提供跨列命令\multicolumn{}{}{} \begin{document} %经典三线表 \begin{table}[H] \caption{\textbf{Example 5}} \centering \begin{tabular}{cccc}%四个c代表有四列且内容居中 \toprule%第一道横线 &\multicolumn{2}{c}{\textbf{\underline{Resulrsummary}}}& \\%跨两列;内容居中;跨列内容为Resultsummary通过\textbf{}与\underline{}命令分别对内容加粗、加下划线 Item1&Item2&Item3&Item4 \\ \midrule%第二道横线 \multirow{2}{*}{Data1}&Data2&Data3&Data4 \\%Data1跨两行,自动表格宽度 &number2&number3&number4 \\ \midrule%第三道横线 Data5&Data6&Data7&Data8 \\ \bottomrule%第四道横线 \end{tabular} \end{table} \end{document}

 

 

左肩理想右肩担当,君子不怨永远不会停下脚步!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3