LaTeX论文写作系列之表格插入
一、常用的表格宏包
dcolumn对齐小数点makecell单独控制单元格格式diagbox对表格进行斜线分割*longtable长表格,可用于处理分页表格(表格超过一页时使用)ltxtablelongtable和tabularx的结合体array各个表格宏包都依赖于它*tabu命令简单、功能强大
二、输入格式及说明
1、一般输入格式
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}&&&&\\\end{tabular}
2、一些说明
(1)特殊符号:
\\ 表示换行
& 表示分隔单元格
(2)垂直对齐方式:
t表示按表格顶部对齐
b 表示按表格底部对齐
默认为:垂直居中,非t和b的参数都看作居中
(3)列格式:
l表示列左齐 (小写的 L)
c表示列居中对齐
r表示列右对齐
三、单元格的合并
1、行内单元格合并命令
\multicolumn{<项数>}{<新列格式>}{<内容>}%<内容>为合并后的新内容
(1)基础模板:
\begin{tabular}{ | c | c | }\hline\multicolumn{2}{ | c | }{成绩} \\\hline语文 & 数学 \\ \hline100 & 100 \\ \hline%阿汪先生的博客\end{tabular}
实际效果:
(2)进阶模板:
\begin{tabular}{ | c | r | r | }\hline&\multicolumn{2}{ c | }{成绩} \\\cline {2-3}姓名 & 语文 & 数学 \\ \hline阿汪 & 93 & 97 \\ \hline%阿汪先生的博客\end{tabular}
实际效果:
语句技巧:画水平表格线需要指定线的起始和终止列号。
用\cline {<起始位置> - <终止位置>}
,如\cline{2-3} 。
2、列内单元格合并命令
需要用multirow宏包
\multirow{<行数>}{<宽度>}{<内容>}
:内容达到指定宽度后自动换行
\multirow{<行数>}*{<内容>}
:单元格的宽度即为输入内容的宽度
(1)基础模板:
%导言区 \usepackage{multirow}\begin{tabular}{ | c | r | r | }\hline\multirow{2}*{姓名}&\multicolumn{2}{ c | }{成绩} \\\cline {2-3}& 语文 & 数学 \\ \hline阿汪 & 93 & 97 \\ \hline%阿汪先生的博客\end{tabular}
实际效果:
四、特殊表格
1、定宽表格—tabularx
(1)注意点:
tabularx宏包提供tabularx环境
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。
(2)使用示例:
%导言区 \usepackage{tabularx}\begin{tabularx}{400}{ | c | X | X | X | X | X |}\hline数字 & 1 & 2 & 3 & 4 & 5 \\ \hline汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline%阿汪先生的博客\end{tabularx}
实际效果:
2、三线式表格—booktabs
(1)booktabs提供了如下命令:
\toprule,画表格顶部粗线。
\midrule,画表格中部粗线。
\bottomrule,画表格底部细线。
\cmidrule与\cline命令相似。
(2)使用示例:
%导言区 \usepackage {booktabs}\begin {tabular}{c c c}\toprule姓名 & 语文 & 数学 \\ \midrule阿汪 & 93 &97 \\ \cmidrule {2-3}阿喵 & 98 &92 \\ \bottomrule%阿汪先生的博客\end{tabular}
实际效果:
五、常用表格参数的设定
1、表格浮动环境
控制表格(浮动)在本页中的显示位置需要table环境。
位置参数有htbp四种:here 、top 、bottom 、float page。
table环境中可以通过\caption命令表格的标题。
(1)位置参数htbp释义:
here:在输入表格的位置排版top:在输入页面的顶部排版bottom:在输入页面的底部排版float page:在单独的浮动页面排版(2)使用模板:
\renewcommand\tablename{表}\begin {table}[htbp]\centering \caption{成绩一览表}\begin {tabular}{c c c}\toprule姓名 & 语文 & 数学 \\ \midrule阿汪 & 93 &97 \\ \cmidrule {2-3}阿喵 & 98 &92 \\ \bottomrule\end{tabular}%阿汪先生的博客\end {table}
实际效果:
2、功能强大的tabu宏包
(1)tabu宏包提供的基本表格环境
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}\begin{tabu}spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
(2)画线格式
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
\begin{tabu}{|[2pt]c|c|[2pt]}
\tabucline[<尺寸>]{-}
用来画横线,<尺寸>设置横线厚度,
{-}指从本行起到本行末尾画一条横线,
{2-}指从第二个单元格开始画线至行尾。
(3)单独设置一行的格式
\rowfont[<对齐方式>]{<字体格式>}
可以设置一行单元格字体的格式。
使用示例:
\begin{tabu}{|X|X|}\tabucline- %“-”表示无厚度等参数\rowfont[c]{\bfseries} This & is \\ \tabucline-for & everyone \\ \tabucline[2pt]-\rowfont [r]{\itshape} Mr & Wang \\ \tabucline-%阿汪先生的博客\end{tabu}
实际效果:
(4)其他操作
在tabu环境中合并与tabular环境不一样,前\extrarowsep
后要在\end{tabu}
之前添加命令\tabuphantomline
。\extrarowsep
可以在每行垂直方向上添加额外空白,得到相同的行高。使用示例:
\begin{tabu}{| X | X |} \hline\multicolumn 2 {|c|}{Hello}&World \\ \hline\tabuphantomline%阿汪先生的博客\end{tabu} %表格中不能有空行
3、复杂、庞大的表格
通过Excel中的LaTeX插件直接生成
插件名称为:Excel2LaTex:Convert Table to LaTex
加载项下载地址:/krlmlr/Excel2LaTeX
六、终极奥义
LaTeX英文社区:
LaTeX中文社区:
-CTEX论坛疑似关闭
- 在GitHub上,有人创建了一个repo,利用issue功能进行讨论,也就是把issue当论坛,
其地址在:/CTeX-org/forum/issues
-另附一个博客:CTeX论坛关闭,TeXers将何去何从?
LaTeX学习文档
在阿汪先生的资源里可供下载:LaTeX学习文档、LaTeX模板、数学建模LaTeX模板、美赛论文LaTeX模板……
如果您觉得文本内容对您有所帮助,请点赞一波,谢谢,如果您在LaTeX写作中有任何疑问或者心得,欢迎在评论区留言。