Latex表格多行和多列合并

29

我正在尝试在Latex中创建表格,但没有成功。我尝试了不同的解决方案,但没有一个解决我的问题。 我想创建一个如下图片所示的表格:

enter image description here

请问有谁可以展示如何在Latex中实现这个表格吗?


5
小心处理表格。不要让数据被困在单元格中的网格里。[数据裸奔更好看](http://darkhorseanalytics.com/blog/data-looks-better-naked/)。另请参阅 Tufte 的 呈现表格数据的概念 - Roland Smith
在社区http://tex.stackexchange.com上,您可以搜索更多的示例。 :-) - Carmoreno
2个回答

51

一种初步的草图可以是以下内容:

\documentclass{article}
\usepackage{multirow}

\begin{document}

\begin{tabular}{|c|c|c|c|c|c|}
\hline
\multirow{3}{*}{A} & \multicolumn{2}{c|}{User B} & %
    \multicolumn{2}{c|}{User C} & \multirow{3}{*}{D}\\
\cline{2-5}
 & \multicolumn{2}{c|}{Value} & \multicolumn{2}{c|}{Value} & \\
\cline{2-5}
 & B1 & B2 & C1 & C2 & \\
\hline
 & & & & & \\
\hline
 & & & & & \\
\hline
% etc. ...
\end{tabular}

\end{document}

它产生:

输出截图

补充:

\documentclass{article}
\usepackage{multirow}

\begin{document}

{\sffamily %
\begin{tabular}{|c|c|c|c|c|c|c|}% seven columns now, not six...
\hline
\multirow{3}{*}{A} & \multicolumn{2}{c|}{User B} & \multirow{3}{*}{X} & %
    \multicolumn{2}{c|}{User C} & \multirow{3}{*}{D}\\
\cline{2-3}\cline{5-6}
 & \multicolumn{2}{c|}{Value} & & \multicolumn{2}{c|}{Value} & \\
\cline{2-3}\cline{5-6}
 & B1 & B2 & & C1 & C2 & \\
\hline
 & & & & & & \\
\hline
 & & & & & & \\
\hline
% etc. ...
\end{tabular}
}%

\end{document}

生成:

在此输入图像描述

仔细检查原始代码与后来的代码之间的所有差异。

请注意,有几个LaTeX程序包可以帮助您改进表格的样式、尺寸和间距:其中之一是bigstrut

另外:

\documentclass{article}
\usepackage{multirow}

\begin{document}
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
\multirow{3}{*}{A} & \multirow{3}{*}{X} & \multicolumn{2}{c|}{User B} & \multicolumn{2}{c|}{User C} & \multirow{3}{*}{D}\\
\cline{3-6}
 & & \multicolumn{2}{c|}{Value} & \multicolumn{2}{c|}{Value} & \\
\cline{3-6}
 & & B1 & B2 & C1 & C2 & \\
\hline
 & & & & & & \\
\hline
\end{tabular}

\end{document}

现在,您应该能够对表模型进行自己的进一步更改。


2

请查看multirow包:

http://texblog.org/2012/12/21/multi-column-and-multi-row-cells-in-latex-tables/

您需要引入该库:

%multi-column
\multicolumn{number cols}{align}{text} % align: l,c,r

%multi-row
\usepackage{multirow}

\multirow{number rows}{width}{text}

然后它看起来像这样:
\documentclass[11pt]{article}
\usepackage{multirow}
\begin{document}

\begin{table}[ht]
\caption{Multi-column and multi-row table}
\begin{center}
\begin{tabular}{ccc}
    \hline
    \multicolumn{2}{c}{\multirow{2}{*}{Multi-col-row}}&X\\
    \multicolumn{2}{c}{}&X\\
    \hline
    X&X&X\\
    \hline
\end{tabular}
\end{center}
\label{tab:multicol}
\end{table}

\end{document}

注意:以下示例代码来自提供的链接


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接