表格中有很多关于跨列和跨行的示例。我尝试用它们来创建这样的表格,但失败了!
+-----------------------------+
| A | B | C | D | E | F |
+----+----+-----------------------------+
| 1 | 2 | 30 | 40 | 50 | 60 | 70 | 80 |
| | 3 | 31 | 41 | 51 | 61 | 71 | 81 |
+----+----+-----------------------------+
| 4 | 5 | 32 | 42 | 52 | 62 | 72 | 82 |
| | 6 | 33 | 43 | 53 | 63 | 73 | 83 |
+----+----+-----------------------------+
这是我写的代码
\begin{table*}
\centering
\caption{Prefetchers coverage}
\label{prefetch-coverage}
\begin{tabular}{ |c|c|c|c|c|c|c|c|}
\cline{3-8}
\\multicolumn{2}{c}{} & & A & B & C & D & E & F \\
\hline
1 & 2 & 30 & 40 & 50 & 60 & 70 & 80 \\
\cline{2-8}
& 3 & 31 & 41 & 51 & 61 & 71 & 81 \\
\hline
4 & 5 & 32 & 42 & 52 & 62 & 72 & 82 \\
\cline{2-8}
& 6 & 33 & 43 & 53 & 63 & 73 & 83 \\
\hline
\end{tabular}
\end{table*}
但是第一行的输出是碎片化的。我错过了什么吗?
答案1
你有,\\multicolumn
这是错误的。那么你应该有
\multicolumn{2}{c|}{}
以便打印规则。
这是正确的代码,其中还包含一种不同的方式来布局表格。
\documentclass[twocolumn]{article}
\usepackage{booktabs} % for the second table
\begin{document}
\begin{table*}
\centering
\caption{Prefetchers coverage}
\label{prefetch-coverage}
\medskip
\begin{tabular}{|*{8}{c|}}
\cline{3-8}
\multicolumn{2}{c|}{} & A & B & C & D & E & F \\
\hline
1 & 2 & 30 & 40 & 50 & 60 & 70 & 80 \\
\cline{2-8}
& 3 & 31 & 41 & 51 & 61 & 71 & 81 \\
\hline
4 & 5 & 32 & 42 & 52 & 62 & 72 & 82 \\
\cline{2-8}
& 6 & 33 & 43 & 53 & 63 & 73 & 83 \\
\hline
\end{tabular}
\end{table*}
\begin{table*}
\centering
\caption{Prefetchers coverage}
\label{prefetch-coverage2}
\medskip
\begin{tabular}{*{8}{c}}
\toprule
& & A & B & C & D & E & F \\
\midrule
1 & 2 & 30 & 40 & 50 & 60 & 70 & 80 \\
& 3 & 31 & 41 & 51 & 61 & 71 & 81 \\
\midrule
4 & 5 & 32 & 42 & 52 & 62 & 72 & 82 \\
& 6 & 33 & 43 & 53 & 63 & 73 & 83 \\
\bottomrule
\end{tabular}
\end{table*}
\end{document}