我正在使用以下链接中的模板
https://digital-library.theiet.org/files/IET_Author-doublecolumn-submission.zip
构造表的代码是
\documentclass{cta-author}
\usepackage{multirow}
\usepackage{booktabs}
\begin{document}
\begin{table}[]
\centering
\processtable{Comparison of performance indices for different cases \label{Table2}}
{\begin{tabular}{@{\extracolsep{\fill}}|c|c|c|c|c|@{}}
\toprule
& A & B & C & \multicolumn{1}{c|}{} \\
\midrule
\multirow{3}{*}{p = 2} & 0.5 &
0.01 & 0.29 & \multicolumn{1}{c|}{I} \\ \cmidrule{2-5}
& 0.56 & 4.7 & 2.7 & \multicolumn{1}{c|}
{J} \\ \cmidrule{2-5}
& 8.2 & 2.6 & 1.4 & \multicolumn{1}{c|}
{K} \\
\bottomrule
\end{tabular}}{}
\end{table}
\end{document}
我希望所有列都有完整的单条垂直线。在此处附加的表格图像中,每行的列垂直线都是断开的。我应该在代码中做哪些更改才能确保列中有一条垂直线?
答案1
这里有一个解决方案,(a)去掉所有垂直线,从而使表格看起来更加开放,(b)去掉代码混乱,比如\multicolumn
最后一列单元格周围的含义包装器,并且用因为正在使用a而不是 a环境而替换错误的@{\extracolsep{\fill}}
指令。@{}
tabular
tabular*
一般性评论:仅仅因为人们可以在互联网上找到大量的 LaTeX 代码并不意味着这些代码是高质量的,或者更确切地说,没有错误。
\documentclass{article}
% \usepackage{multirow} % not needed
\usepackage{booktabs}
\begin{document}
\begin{table}
\centering
% (don't know how '\processtable' is defined, hence commented out:)
% \processtable{Comparison of performance indices for different cases}
\label{Table2}
\begin{tabular}{@{} l cccc @{}} \toprule
& A & B & C & D \\ \midrule
& 0.5 & 0.01 & 0.29 & I \\ \cmidrule{2-5}
p = 2 & 0.56 & 4.7 & 2.7 & J \\ \cmidrule{2-5}
& 8.2 & 2.6 & 1.4 & K \\ \bottomrule
\end{tabular}
\end{table}
\end{document}