我使用下面的代码生成了一个表格,但它看起来并不正确。引起问题的区域用红色圈出。多列/多行包是否与表格不同步?有什么建议可以解决这些问题吗?
提前致谢!
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{boldline}
\begin{table}[b!]
\caption{.}
\renewcommand{\arraystretch}{1.15}%
\centering
\setlength{\tabcolsep}{5.45pt}
\begin{tabular}{l c || c c c | c c c | c c} %
\hlineB{2}
\multirow{3}{*}{} & \multirow{3}{*}{Year} & \multicolumn{3}{c|}{Technique} & \multicolumn{3}{c|}{Type} & \multicolumn{2}{c}{Detail}\\
& & \multirow{2}{*}{Type} &$\tau$ & \multirow{2}{*}{Idea} & \multicolumn{3}{c|}{$\bar{u}$} & \multicolumn{2}{c}{Idea}\\
& & & [$-$] & & $a$ & $b$ & $c$ & 1 & 2 \\ \hline \hline
& 2020 & -- & -- & -- & -- & -- & -- & -- & -- \\
\hlineB{2}
\end{tabular}
\end{table}
\end{document}
由于答案引用了该问题的原始代码,因此在此提供以供参考。 上述代码已由OP编辑。
\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}
\begin{table}[b!]
\caption{.}
\renewcommand{\arraystretch}{1.15}
\centering
\setlength{\tabcolsep}{5.45pt}
\begin{tabular}{l c || c c c | c c c | c c}
\toprule
\multirow{3}{*}{} & \multirow{3}{*}{Year} & \multicolumn{3}{c}{Technique} & \multicolumn{3}{c}{Type} & \multicolumn{2}{c}{Detail}\\
& & \multirow{2}{*}{Type} &$\tau$ & \multirow{2}{*}{Idea} & \multicolumn{3}{c}{$\bar{u}$} & \multicolumn{2}{c}{Idea}\\
& & & [$-$] & & $a$ & $b$ & $c$ & 1 & 2 \\ \hline \hline
& 2020 & -- & -- & -- & -- & -- & -- & -- & -- \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
答案1
正如评论中指出的那样,如果您想要垂直规则,那么不应该使用booktabs
包并坚持使用常规\hline
宏。
另外,如果您使用multicol
s,则需要在列定义中告诉他们您想要使用垂直线。因此,\multicolumn{3}{c}{...}
您应该\multicolumn{3}{c|}{...}
在适当的位置写上 ,而不是 。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{multirow}
\begin{document}
\begin{table}[b!]
\caption{.}
\renewcommand{\arraystretch}{1.15}
\centering
\setlength{\tabcolsep}{5.45pt}
\begin{tabular}{l c || c c c | c c c | c c}
\hline
\multirow{3}{*}{} & \multirow{3}{*}{Year} & \multicolumn{3}{c|}{Technique} & \multicolumn{3}{c|}{Type} & \multicolumn{2}{c}{Detail} \\
& & \multirow{2}{*}{Type} & $\tau$ & \multirow{2}{*}{Idea} & \multicolumn{3}{c|}{$\bar{u}$} & \multicolumn{2}{c}{Idea} \\
& & & [$-$] & & $a$ & $b$ & $c$ & 1 & 2 \\ \hline \hline
& 2020 & -- & -- & -- & -- & -- & -- & -- & -- \\
\hline
\end{tabular}
\end{table}
\end{document}
答案2
如果您确实想将垂直规则与水平规则一起使用booktabs
(这完全不符合 的精神\booktabs
),则应该{NiceTabular}
使用nicematrix
。
\documentclass{article}
\usepackage{caption}
\usepackage{nicematrix}
\usepackage{booktabs}
\begin{document}
\begin{table}[b!]
\caption{My Caption}
\renewcommand{\arraystretch}{1.15}
\centering
\setlength{\tabcolsep}{5.45pt}
\begin{NiceTabular}{c || c c c | c c c | c c}
\toprule
& \Block{1-3}{Technique} &&& \Block{1-3}{Type} &&& \Block{1-2}{Detail} \\
Year & \Block{2-1}{Type} & $\tau$ & \Block{2-1}{Idea} & \Block{1-3}{$\bar{u}$} &&& \Block{1-2}{Idea} \\
& & [$-$] & & $a$ & $b$ & $c$ & 1 & 2 \\
\hline\hline
2020 & -- & -- & -- & -- & -- & -- & -- & -- \\
\bottomrule
\end{NiceTabular}
\end{table}
\end{document}
您需要多次编译(因为nicematrix
在后台使用 PGF/Tikz 节点)。