两列表格中的标题边距与正文不同(cas-dc)

两列表格中的标题边距与正文不同(cas-dc)

我有以下问题:

在此处输入图片描述

我希望表格上方的标题从左侧开始对齐,而不是与空格对齐。以下是从我的项目中复制粘贴的 MWE:

\documentclass[a4paper,fleqn]{cas-dc}

\usepackage[numbers]{natbib}
\usepackage{graphicx}

\begin{document}

\maketitle

\begin{table*}[pos=t]

\caption{Observed results of the user study.}
\label{tab:Result_time}
\resizebox{\textwidth}{!}{%
\begin{tabular}{lllllllllllll}
\toprule
                                                         &                   & \textbf{P1} & \textbf{P2} & \textbf{P3} & \textbf{P4} & \textbf{P5} & \textbf{P6} & \textbf{P7} & \textbf{P8} & \textbf{P9} & \textbf{P10} & \textbf{P11} \\ \midrule
\multicolumn{1}{c}{\multirow{3}{*}{\textbf{Scenario 1}}} & Accuracy          & 100\%       & 50\%        & 100\%       & 0\%         & 100\%       & 100\%       & 100\%       & 0\%         & 100\%       & 50\%         & 100\%        \\
\multicolumn{1}{c}{}                                     & Time Taken        & 18:13       & 15:40       & 16:26       & 20:32       & 17:10       & 18:08       & 16:22       & 18:50       & 12:18       & 16:27        & 15:41        \\
\multicolumn{1}{c}{}                                     & Number of queries & 18          & 10          & 11          & 15           & 7           & 12          & 16          & 22          & 12          & 10           & 15           \\ \midrule
\textbf{Scenario 2}                                      & Time Taken        & 7:35        & 8:39        & 10:20       & 10:41       & 9:47        & 14:28       & 12:24       & 18:28       & 8:29        & 9:11         & 8:24         \\ \midrule
\textbf{Scenario 3}                                      & Time Taken        & 6:21        & 4:50        & 5:42        & 7:18        & 4:30        & 4:52        & 4:27        & 5:15        & 5:04        & 6:12         & 5:48    
\\
\bottomrule
\end{tabular}
}
\end{table*}

\end{document}

我尝试添加\captionsetup{justification=justified}但没有成功。

答案1

els-cas在加载类时初始化一些变量(在本例中是保存标题框宽度的变量),这发生在设置页面几何之前,因此标题不知道文本宽度发生了变化(这是另一个错误)。

\textwidth当使用两列表格时,您需要明确说明使用的宽度\begin{table*}[width=\textwidth],但您可以在序言中使用它来全局设置它:

\AtBeginDocument{\setlength{\FullWidth}{\textwidth}}

这将修复els-cas的值\textwidth(感谢 egreg 指出这一点)。另外,不要重新缩放表格。就这样。

在您的文档中:

\documentclass[a4paper,fleqn]{cas-dc}

\usepackage[numbers]{natbib}
\usepackage{graphicx}
\AtBeginDocument{\setlength{\FullWidth}{\textwidth}}
\begin{document}

\maketitle

\begin{table*}[pos=t,width=\textwidth]

\caption{Observed results of the user study.}
\label{tab:Result_time}
\begin{tabular}{@{}*{13}{l}@{}}
\toprule
                                                         &                   & \textbf{P1} & \textbf{P2} & \textbf{P3} & \textbf{P4} & \textbf{P5} & \textbf{P6} & \textbf{P7} & \textbf{P8} & \textbf{P9} & \textbf{P10} & \textbf{P11} \\ \midrule
\multicolumn{1}{@{}c}{\multirow{3}{*}{\textbf{Scenario 1}}} & Accuracy          & 100\%       & 50\%        & 100\%       & 0\%         & 100\%       & 100\%       & 100\%       & 0\%         & 100\%       & 50\%         & 100\%        \\
\multicolumn{1}{@{}c}{}                                     & Time Taken        & 18:13       & 15:40       & 16:26       & 20:32       & 17:10       & 18:08       & 16:22       & 18:50       & 12:18       & 16:27        & 15:41        \\
\multicolumn{1}{@{}c}{}                                     & Number of queries & 18          & 10          & 11          & 15           & 7           & 12          & 16          & 22          & 12          & 10           & 15           \\ \midrule
\textbf{Scenario 2}                                      & Time Taken        & 7:35        & 8:39        & 10:20       & 10:41       & 9:47        & 14:28       & 12:24       & 18:28       & 8:29        & 9:11         & 8:24         \\ \midrule
\textbf{Scenario 3}                                      & Time Taken        & 6:21        & 4:50        & 5:42        & 7:18        & 4:30        & 4:52        & 4:27        & 5:15        & 5:04        & 6:12         & 5:48    
\\
\bottomrule
\end{tabular}
\end{table*}

\end{document}

答案2

无关:

  • 不要使用比例框来将表格容纳到文本宽度中。而是让 LaTeX 计算大小\tabcolsep@{\extracolsep{\fill}}如果需要,减少表格中使用的字体大小(在您的情况下不需要)
  • 由于从 MWE 可以看出,您有一个列文档,因此您可以使用简单table环境。此时您还没有报告问题:
\documentclass[a4paper,fleqn]{cas-dc}
\usepackage[numbers]{natbib}

%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\usepackage{lipsum}

\begin{document}
\lipsum[11]
    \begin{table}[pos=ht]
\caption{Observed results of the user study. \lipsum[66]}
\label{tab:Result_time}
\setlength\tabcolsep{0pt}
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}} lllllllllllll }
\toprule
    &   & \textbf{P1} & \textbf{P2} & \textbf{P3} & \textbf{P4} & \textbf{P5}
        & \textbf{P6} & \textbf{P7} & \textbf{P8} & \textbf{P9} & \textbf{P10}
        & \textbf{P11} \\ \midrule
\multicolumn{1}{c}{\multirow{3}{*}{\textbf{Scenario 1}}}
    & Accuracy
        & 100\%       & 50\%        & 100\%       & 0\%         & 100\%
        & 100\%       & 100\%       & 0\%         & 100\%       & 50\%
        & 100\%        \\
    & Time Taken
        & 18:13       & 15:40       & 16:26       & 20:32       & 17:10
        & 18:08       & 16:22       & 18:50       & 12:18       & 16:27
        & 15:41        \\
    & Number of queries
        & 18          & 10          & 11          & 15           & 7
        & 12          & 16          & 22          & 12          & 10
        & 15           \\ \midrule
\textbf{Scenario 2}
    & Time Taken
        & 7:35        & 8:39        & 10:20       & 10:41       & 9:47
        & 14:28       & 12:24       & 18:28       & 8:29        & 9:11
        & 8:24         \\ \midrule
\textbf{Scenario 3}
    & Time Taken
        & 6:21        & 4:50        & 5:42        & 7:18        & 4:30
        & 4:52        & 4:27        & 5:15        & 5:04        & 6:12
        & 5:48          \\
    \bottomrule
\end{tabular*}
    \end{table}
\end{document}

给出期望的结果:

在此处输入图片描述

相关内容