zhangtt123 发表于 2020-2-12 15:18

LaTeX论文写作系列之表格插入

一、常用的表格宏包
        dcolumn                                对齐小数点
        makecell                        单独控制单元格格式
        diagbox                                对表格进行斜线分割
*        longtable                        长表格,可用于处理分页表格(表格超过一页时使用)
        ltxtable                        longtable和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
                   语文 & 数学   \\  \hline
                   100 &  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{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度

基础模板:
%导言区   \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}
            \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}{|c|c|}
          \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
          {-}指从本行起到本行末尾画一条横线,
          {2-}指从第二个单元格开始画线至行尾。

(3)单独设置一行的格式
          \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
使用示例:

\begin{tabu}{|X|X|}
        \tabucline-            %“-”表示无厚度等参数
        \rowfont{\bfseries} This & is \\ \tabucline-
        for & everyone \\ \tabucline-
        \rowfont {\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}                                                            %表格中不能有空行

————————————————
版权声明:本文为CSDN博主「阿汪先生」的原创文章。
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437

925865807 发表于 2020-2-16 11:27




谢谢分享
页: [1]
查看完整版本: LaTeX论文写作系列之表格插入