.png)
У меня следующая проблема:
Я хочу, чтобы заголовок над таблицей начинался с выравнивания по левому краю, а не с пробела. Вот 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}
дает желаемый результат: