latex制作复杂表格之multirow,multicolum和cline综合使用简介
2012-04-06 14:49阅读:
latex制作复杂表格之multirow,multicolum和cline综合使用简介
已有 2283 次阅读 2011-5-18 17:04
|个人分类:Table|系统分类:科研笔记|关键词:Latex,
Table, multirow, multicolum, cline
在复杂表格制作中,有时候会遇到一列横跨多行,或者一行横跨多列的情况,那么这个时候就要分别用到\multirow,\multicolum的命令,标准语法如下:
\multicolumn{num_cols}{alignment}{contents}.
%%%%%%%%%%%%
num_cols is the number of subsequent
columns to merge;
alignment is, either l, c, r or to have
text wrapping specifiy a width p{5.0cm} . And
contents is
simply the actual data you want to be contained within t
hat cell.%%%%%%%%%%%%%%%%
\multirow{num_rows}{width}{contents}.
%%%%%%%%%%%%%%%%The arguments are pretty simple to deduce
(
* for the
width means the content's
natural width).%%%%%%%%%%%%%%
(需要注意的是:这个命令需要在preamble中添加宏包
\usepackage{multirow})
另外,在复杂表格中,需要从某个某列开始画线,那么需要使用\cline命令,标准语法为:
\cline{i-j}
%%%%%%%%%%% partial horizontal line beginning in column
i and ending in column
j %%%%%%%%%%%%%
关于\multicolum和
\multirow在做表时的一些细节问题表述,可以参考latex文档中的Table部分。
这里,本博文给出一个更加复杂的表格制作,那就是表格中同时存在横跨多行和多列的情况,这个时候会出现\multicolum和\multirow混合使用的情况。(需要注意的是:这种情况下需要使用\multicolumn{1}{|c|}{...}来画单元格的左右边界线)。
例子一:
\usepackage{multirow}
..................
\begin{tabular}{c|c|c|c}
\hline
\multicolumn{1}{c|}{\multirow
{2}{*}{Canada}}&\multicolumn{1}{|c|}{\multirow
{2}{*}{Ontario}}&
\multicolumn{2}{|c}{Hamilton}\\\cline{3-4}
\multicolumn{1}{c|}{}&\multicolumn{1}{|c}{}&
\multicolumn{1}{|c|}{Barclay Street} & Emerson Street\\
\hline
\end{tabular}
例子二:
\usepackage{multirow}
..................
\begin{tabular}{cc|c|c|c|c|l}
\cline{3-6}
& & \multicolumn{4}{|c|}{Jimmy} \\ \cline{3-6}
& & Canada & China & Ontario & Hamilton \\
\cline{1-6}
\multicolumn{1}{|c|}{\multirow{2}{*}{McMaster}} &
\multicolumn{1}{|c|}{MS} & Mon & Tue & Wed & Thu
& DeGroote School of Business\\ \cline{2-6}
\multicolumn{1}{|c|}{}
&
\multicolumn{1}{|c|}{IS} & Jan & Feb & Mar & Apr
& DeGroote School of Business \\ \cline{1-6}
\end{tabular}