跨特定列的規則

跨特定列的規則

我想創建一個如下所示的表:

在此輸入影像描述

我仍然無法正確插入標題行。這是代碼:

\documentclass[10pt,conference]{IEEEtran}
\begin{document}

\begin{table}
\caption{Time taken for full encryption/decryption using different crypto algorithms}
\centering
\begin{tabular}{|*{7}{c|}}
\hline
\textbf{CPU}  & \multicolumn{3}{c}{\textbf{Encryption}} & \multicolumn{3}{|c|}{\textbf{Decryption}}
\\\textbf{Time}
& \multicolumn{3}{c}{} &\multicolumn{3}{|c|}{}
\\\textbf{(seconds)}
& \textbf{\textit{TLS}} & \textbf{\textit{CTR}} & \textbf{\textit{CBC}} & \textbf{\textit{TLS}} & \textbf{\textit{CTR}} & \textbf{\textit{CBC}}\\ \hline
Minimum & 2.2612 & 1.4145 & 2.0110 & 2.1037 & 1.4267 & 1.4002\\ \hline
Maximum & 3.0849 & 1.4156 & 2.0232 & 2.7585 & 1.4339 & 1.4059\\ \hline
Average & 2.6684 & 1.4150 & 2.0154 & 2.4186 & 1.4324 & 1.4026\\ \hline
\end{tabular}
\end{table}

\end{document}

這會產生下表:

在此輸入影像描述

你能告訴我如何插入缺失的行嗎?

答案1

<a>若要在列之間插入跨列的行<b>,可以使用\cline{<a>-<b>}。我建議使用booktabs儘管:

在此輸入影像描述

在此輸入影像描述

\documentclass[10pt,conference]{IEEEtran}

\usepackage{booktabs}

\begin{document}

\begin{table}
  \caption{Time taken for full encryption/decryption using different crypto algorithms}
  \centering
  \begin{tabular}{|*{7}{c|}}
    \hline
    \textbf{CPU}  & \multicolumn{3}{c}{} & \multicolumn{3}{|c|}{} \\
    \textbf{Time} & \multicolumn{3}{c}{\textbf{Encryption}} &\multicolumn{3}{|c|}{\textbf{Decryption}} \\
    \cline{2-7}
    \textbf{(seconds)} & \textbf{\textit{TLS}} & \textbf{\textit{CTR}} & \textbf{\textit{CBC}} & \textbf{\textit{TLS}} & \textbf{\textit{CTR}} & \textbf{\textit{CBC}} \\
    \hline
    Minimum & 2.2612 & 1.4145 & 2.0110 & 2.1037 & 1.4267 & 1.4002 \\
    \hline
    Maximum & 3.0849 & 1.4156 & 2.0232 & 2.7585 & 1.4339 & 1.4059 \\
    \hline
    Average & 2.6684 & 1.4150 & 2.0154 & 2.4186 & 1.4324 & 1.4026 \\
    \hline
  \end{tabular}
\end{table}

\begin{table}
  \caption{Time taken for full encryption/decryption using different crypto algorithms}
  \centering
  \begin{tabular}{ *{7}{c} }
    \toprule
    & \multicolumn{3}{c}{\textbf{Encryption}} &\multicolumn{3}{c}{\textbf{Decryption}} \\
    \cmidrule(lr){2-4}\cmidrule(lr){5-7}
    \raisebox{\dimexpr1.25\normalbaselineskip-.5\height}[0pt][0pt]{\begin{tabular}{@{}c@{}}
      \textbf{CPU time} \\ \textbf{(seconds)}
    \end{tabular}} & \textbf{\textit{TLS}} & \textbf{\textit{CTR}} & \textbf{\textit{CBC}} & \textbf{\textit{TLS}} & \textbf{\textit{CTR}} & \textbf{\textit{CBC}} \\
    \midrule
    Minimum & 2.2612 & 1.4145 & 2.0110 & 2.1037 & 1.4267 & 1.4002 \\
    Maximum & 3.0849 & 1.4156 & 2.0232 & 2.7585 & 1.4339 & 1.4059 \\
    Average & 2.6684 & 1.4150 & 2.0154 & 2.4186 & 1.4324 & 1.4026 \\
    \bottomrule
  \end{tabular}
\end{table}

\end{document}

答案2

這是補充@Werner 的第二個解決方案的方法。我想建議你擺脫不必要的(而且看起來粗俗的)大膽的斜體在標題儲存格中。對於結構良好的標題,根本不需要使用粗體和斜體。另外,為了確保表自動跨越列的整個寬度,您可能需要使用環境tabular*而不是環境tabular

在此輸入影像描述

\documentclass[10pt,conference]{IEEEtran}
\usepackage{booktabs}
\begin{document}

\begin{table}
\setlength\tabcolsep{0pt} % let tabular* figure out intercolumn whitespace
\caption{CPU time taken for full encryption/decryption using different crypto algorithms}
\begin{tabular*}{\columnwidth}{@{\extracolsep{\fill}}l*{6}{c}}
\toprule
CPU Time  & \multicolumn{3}{c}{Encryption} & \multicolumn{3}{c}{Decryption}\\
\cmidrule{2-4} \cmidrule{5-7}
(seconds)
& TLS & CTR & CBC & TLS & CTR & CBC\\ 
\midrule
Minimum & 2.2612 & 1.4145 & 2.0110 & 2.1037 & 1.4267 & 1.4002\\ 
Maximum & 3.0849 & 1.4156 & 2.0232 & 2.7585 & 1.4339 & 1.4059\\ 
Average & 2.6684 & 1.4150 & 2.0154 & 2.4186 & 1.4324 & 1.4026\\ 
\bottomrule
\end{tabular*}
\end{table}

\end{document}

相關內容