我知道我以前问过这个问题,但如果有人能逐步向我解释如何解决这个问题,我将不胜感激(而不是仅仅发布更改后的代码,我也发现这真的非常好而且很有帮助,但我没有学会如何自己找到解决方案)。对于你们大多数人来说,这个问题可能相当容易解决。我有一张桌子,我想让正数和负数对齐。
\documentclass[paper=a4, pagesize, fontsize=11pt]{scrartcl} %Doku: "scrguide"
\usepackage{pdfpages}
\usepackage[latin1]{inputenc} % Eingabekodierung
\usepackage[T1]{fontenc} % Fontkodierung
\usepackage[ngerman]{babel} % deutsche Sprachenunterstützung; Doku: "gerdoc"
% \usepackage[english]{babel} % Bei Bedarf: englische Sprachenunterstützung
\usepackage{lmodern} % Schrift: Latin Modern
\usepackage{microtype} % mikrotypographische Erweiterungen von pdfTeX; s.a. microtype-DE
\usepackage{amsmath} % AMSmath-Paket der American Mathematical Society (AMS)
\usepackage{color} % Verwendung von Farben
\usepackage{graphicx} % Einbinden von Grafiken; Doku: "grfguide"
\usepackage{hyperref} % Querverweise & Links anklickbar
\usepackage{apacite} % Zitierregeln nach APA
\usepackage{csquotes} % Anführungszeichen mit \enquote{...}
\usepackage{enumerate}
\definecolor{indigo}{rgb}{0.0, 0.25, 0.42}
\definecolor{officegreen}{rgb}{0.0, 0.5, 0.0}
\definecolor{azure}{rgb}{0.0, 0.5, 1.0}
\usepackage{float}
% --- Behübschungen
\setkomafont{captionlabel}{\small\sffamily\bfseries} % kleinere Beschriftungen
\addtokomafont{caption}{\small} % --''--
\renewcommand{\baselinestretch}{1.3} % Zeilenabstand im Text
\renewcommand{\arraystretch}{1} % Zeilenabstand in mehrzeiligen Formeln und Tabellen
\setlength{\parskip}{1.3ex} % = space between paragraphs in height of "x"
\setlength{\parindent}{0pt} % 0 pt = indentation
\hypersetup{ % Gestaltung interner Links [hyperref]:
pdfborder={0 0 0}, % keine Rahmen um Links
colorlinks=true,linkcolor=azure,urlcolor=red,citecolor=blue % Links färbig hervorheben
% colorlinks=false % Links nicht färbig hervorheben
} % end of hypersetup`
\usepackage{geometry}
\usepackage{caption}
\usepackage{longtable}
%\usepackage{threeparttablex}
\usepackage{makecell}
\begin{document}
\begin{table}[H]
\caption{Ergebnisse der Schätzung über Personenparameter}
\label{tab:personen}
\scriptsize
\begin{tabular}{p{2cm}cSSccccccc}
&\multicolumn{2}{c}{Extraversion}& \multicolumn{2}{c}{Neurotizismus} &\multicolumn{2}{c}{Offenheit} &\multicolumn{2}{c}{Verträglichkeit} & \multicolumn{2}{c}{Gewissenhaftigkeit} \\ \cmidrule(l){2-3} \cmidrule(l){4-5} \cmidrule(l){6-7} \cmidrule(l){8-9} \cmidrule(l){10-11}
&{EAP}&{WLE}&{EAP}&{WLE}&{EAP}&{WLE}&{EAP}&{WLE}&{EAP}&{WLE}\\ \toprule
Person 1&{0.74}&{0.79}&{-0.46}&{-0.53}& {1.08} &{1.69}& {0.39}& {0.58} &{0.83}&{1.08} \\
Person 2&{-1.68}&{-2.07} &{0.33}&{0.40}&{-0.37}&{-0.53}&{0.10}& {0.14} &{-0.31}&{-0.50}\\
Person 3&{1.99}&{3.28}&{-0.25}&{-0.28}& {-1.12}&{-1.38}&{-0.04}& {-0.07} &{1.20}&{1.80}\\
Person 4&{0.74}&{0.79}&{0.72}&{0.91}&{0.81}&{1.08}&{-0.04}& {-0.07} &{-0.31}&{-0.50}\\
Person 5&{-0.12}&{-0.21} &{-0.06}&{-0.05}&{0.15}&{0.07}& {0.39}& {0.58}&{0.83}&{1.08}\\
Person 6 &{0.43}&{0.40} &{0.72}&{0.91}& {1.38}&{2.90}&{0.10}& {0.14} &{-0.06}&{-0.20}\\
Person 7&{1.99}&{3.28} &{-0.90}&{-1.18}&{0.57}&{0.65}&{0.70}& {1.16} &{0.83}&{1.08}\\
Person 8 &{-1.13}&{-1.32}&{-0.46}&{-0.53}&{0.15}&{0.07}&{0.54}& {0.84}&{0.21}&{0.14}\\
Person 9 &{-1.40}&{-1.66}&{1.68}&{2.89}&{1.08}&{1.69}&{-0.33}& {-0.50} &{0.83}&{1.08}\\
Person 10&{-0.62}&{-0.74}&{0.33}&{0.40}&{-1.27}&{-1.56}&{-0.78}& {-1.34} &{-0.77}&{-1.01}\\
\bottomrule
\end{tabular}
\begin{tablenotes}
\item Hinweis. In der Tabelle sind lediglich die Parameter für die ersten zehn Personen dargestellt.
\end{tablenotes}
\end{table}
\end{document}
我已经尝试使用列定义 S 但仍然不起作用。
你们当中有谁能帮我解决这个问题?我也非常想知道你们建议的每一个修改对表格的具体影响,以便我将来能够自己解决这个问题。
非常感谢 :=)
答案1
首先,数字不应该用括号括起来。此外,在这种情况下,还应使用正确的列规范
S[table-format=-1.2]
意思是“减号”、“一位数的整数部分”、“两位数的小数部分”。
将tabular*
和设置\tabcolsep
为零,我们让 TeX 来计算列间距。事实证明,只要缩短过宽的列标题,表格就不需要减小字体大小。
\documentclass[paper=a4, pagesize, fontsize=11pt]{scrartcl} %Doku: "scrguide"
\usepackage{siunitx,booktabs}
\begin{document}
\begin{table}[htp]
\centering
\caption{Ergebnisse der Schätzung über Personenparameter}
\label{tab:personen}
%\footnotesize
\setlength{\tabcolsep}{0pt}
\begin{tabular*}{\textwidth}{
@{\extracolsep{\fill}}% fill the space between columns
l % one left aligned column
*{10}{S[table-format=-1.2]} % ten columns with numbers
}
\toprule
&\multicolumn{2}{c}{E}
&\multicolumn{2}{c}{N}
&\multicolumn{2}{c}{O}
&\multicolumn{2}{c}{V}
&\multicolumn{2}{c}{G}
\\
\cmidrule{2-3} \cmidrule{4-5} \cmidrule{6-7} \cmidrule{8-9} \cmidrule{10-11}
&{EAP}&{WLE}&{EAP}&{WLE}&{EAP}&{WLE}&{EAP}&{WLE}&{EAP}&{WLE}
\\
\midrule
Person 1 & 0.74 & 0.79 & -0.46 & -0.53 & 1.08 & 1.69 & 0.39 & 0.58 & 0.83 & 1.08 \\
Person 2 & -1.68 & -2.07 & 0.33 & 0.40 & -0.37 & -0.53 & 0.10 & 0.14 & -0.31 & -0.50 \\
Person 3 & 1.99 & 3.28 & -0.25 & -0.28 & -1.12 & -1.38 & -0.04 & -0.07 & 1.20 & 1.80 \\
Person 4 & 0.74 & 0.79 & 0.72 & 0.91 & 0.81 & 1.08 & -0.04 & -0.07 & -0.31 & -0.50 \\
Person 5 & -0.12 & -0.21 & -0.06 & -0.05 & 0.15 & 0.07 & 0.39 & 0.58 & 0.83 & 1.08 \\
Person 6 & 0.43 & 0.40 & 0.72 & 0.91 & 1.38 & 2.90 & 0.10 & 0.14 & -0.06 & -0.20 \\
Person 7 & 1.99 & 3.28 & -0.90 & -1.18 & 0.57 & 0.65 & 0.70 & 1.16 & 0.83 & 1.08 \\
Person 8 & -1.13 & -1.32 & -0.46 & -0.53 & 0.15 & 0.07 & 0.54 & 0.84 & 0.21 & 0.14 \\
Person 9 & -1.40 & -1.66 & 1.68 & 2.89 & 1.08 & 1.69 & -0.33 & -0.50 & 0.83 & 1.08 \\
Person 10& -0.62 & -0.74 & 0.33 & 0.40 & -1.27 & -1.56 & -0.78 & -1.34 & -0.77 & -1.01 \\
\midrule[\heavyrulewidth]
\multicolumn{11}{l}{E: Extraversion; N: Neurotizismus; O: Offenheit} \\
\multicolumn{11}{l}{V: Verträglichkeit; G: Gewissenhaftigkeit}
\end{tabular*}
\end{table}
\end{document}