表格对齐帮助

表格对齐帮助

我遇到了三个相当小的问题,但我似乎不知道如何解决它们。

在此处输入图片描述

第一个问题:尽管我的 Latex 编辑器中的分号和后面的数字之间有“间隙”(例如,第一行有 (0.0; 0.0)),但这并没有显示在表中。我怀疑问题与包有关siunitx

第二个问题:有没有办法让 95% 置信区间(括号中的数字)与其上方的数字更好地对齐?我希望将括号中的数字移到更左侧 - 可能让分号与其上方的小数点对齐。

第三个问题:虽然此特定表格中未显示,但当我放置“-”符号时,siunitx会显示“放错符号标记”消息。在下面的 MWE 中,我尝试修复该问题,但似乎没有奏效。

\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}
\sisetup{input-symbols = {( ) -}}
\begin{document}
\begin{table} [H]
\centering
\caption[Presentation of survival data for the whole sample ($N = \num{11 959}$)]
{Presentation of survival data for the whole sample ($N = \num{11 959}$).\\    [\medskipamount] Legend:
Y:~Year; RS:~Risk Set; G:~Graduated; AE:~Academically Excluded; C:~Censored; HRG:~Hazard Ratio --~Graduates;
HRAE: Hazard Ratio --~Academically Excluded}
\label{table:SurvivalAll}
\begin{tabular*}{\textwidth}{
@{\extracolsep{\fill}}
S[table-format=1.0]
S[table-format=5.0,group-four-digits=true]
S[table-format=4.0]
S[table-format=3.0]
S[table-format=4.0]
S[table-format=2.1]
S[table-format=2.1]
@{}
}
\toprule
{\bfseries Y} & {\bfseries RS} & {\bfseries G} &
{\bfseries AE} & {\bfseries C} &
{\bfseries HRG} & {\bfseries HRAE}\\
& & & & & {(\%)} & {(\%)} \\
\midrule
1 & 11959 & 0 & 725 & 1619 & 0.0 & 6.1 \\ 
& & & & &  (0.0; 0.0) & (6.0; 6.1) \\
2 & 9615 & 0 & 474 & 1513 & 0.0 & 4.9 \\
& & & & &  (0.0; 0.0) & (4.0; 5.0) \\
3 & 7628 & 1271 & 335 & 966 & 16.7 & 4.4 \\
& & & & &  (16.0; 17.0) & (4.0; 5.0) \\
4 & 5056 & 2797 & 145 & 405 & 55.3 & 2.9 \\
    & & & & &  (54.0; 57.0) & (2.0; 3.0) \\
5 & 1709 & 1144 & 77 & 170 & 66.9 & 4.5 \\
    & & & & &  (65.0; 69.0) & (4.0; 5.0) \\
6 & 318 & 236 & 15 & 24 & 74.2 & 4.7 \\
    & & & & &  (65.0; 69.0) & (4.0; 5.0) \\
7 & 43 & 27 & 7 & 5 & 62.8 & 16.3 \\ 
& & & & & (48.0; 77.0) & (5.0; 27.0) \\
8 & 4 & 3 & 0 & 1 & 75.0 & 0.0 \\
& & & & &  (33.0; 117.0) & (0.0; 0.0) \\
\bottomrule
\end{tabular*}
\end{table}
\end{document}

答案1

对于第一个问题,这是因为每个单元格内都处于数学模式。对于第二个问题,我认为将置信区间置于单元格的中心会更好看;为了将分号置于数字之间的中心,我将其替换为 `{\,;\,}。使用您提供的代码,我没有遇到第三个问题。

我还建议使用 \ threeparttable` 包将图例放在表格底部,并在行组之间添加一些垂直空间。因此,我的建议如下:

\documentclass{article}
\usepackage{booktabs}
\usepackage{caption}
\usepackage[online]{threeparttable}
\usepackage{siunitx}
\sisetup{input-symbols = {( ) -}}

\begin{document}

\begin{table} [H]
\centering
\begin{threeparttable}
\caption{Presentation of survival data for the whole sample ($N = \num{11 959}$). }
\label{table:SurvivalAll}
\begin{tabular*}{\textwidth}{
@{\extracolsep{\fill}}
S[table-format=1.0]
S[table-format=5.0,group-four-digits=true]
S[table-format=4.0]
S[table-format=3.0]
S[table-format=4.0]
S[table-format=2.1]
S[table-format=2.1]
@{}
}
\toprule
{\bfseries Y} & {\bfseries RS} & {\bfseries G} &
{\bfseries AE} & {\bfseries C} &
{\bfseries HRG} & {\bfseries HRAE}\\
& & & & & {(\%)} & {(\%)} \\
\midrule
1 & 11959 & 0 & 725 & 1619 & 0.0 & 6.1 \\
& & & & & {(0.0{\,;\,}0.0)} & {(6.0{\,;\,}6.1)} \\[1ex]
2 & 9615 & 0 & 474 & 1513 & 0.0 & 4.9 \\
& & & & & {(0.0{\,;\,}0.0)} & {(4.0{\,;\,}5.0)} \\[1ex]
3 & 7628 & 1271 & 335 & 966 & 16.7 & 4.4 \\
& & & & & {(16.0{\,;\,}17.0)} & {(4.0{\,;\,}5.0)} \\[1ex]
4 & 5056 & 2797 & 145 & 405 & 55.3 & 2.9 \\
    & & & & & {(54.0{\,;\,}57.0)} & {(2.0{\,;\,}3.0)} \\[1ex]
5 & 1709 & 1144 & 77 & 170 & 66.9 & 4.5 \\
    & & & & & {(65.0{\,;\,}69.0)} &{(4.0{\,;\,}5.0)} \\[1ex]
6 & 318 & 236 & 15 & 24 & 74.2 & 4.7 \\
    & & & & & {(65.0{\,;\,}69.0)} & {(4.0{\,;\,}5.0)} \\[1ex]
7 & 43 & 27 & 7 & 5 & 62.8 & 16.3 \\
& & & & & {(48.0{\,;\,}77.0)} & {(5.0{\,;\,}27.0)} \\[1ex]
8 & 4 & 3 & 0 & 1 & 75.0 & 0.0 \\
& & & & & {(33.0{\,;\,}117.0)} & {(0.0{\,;\,}0.0)} \\
\bottomrule
\addlinespace
\end{tabular*}
\begin{tablenotes}
  \item[Legend:]
Y:~Year; RS:~Risk Set; G:~Graduated; AE:~Academically Excluded; C:~Censored; HRG:~Hazard Ratio --~Graduates;
HRAE: Hazard Ratio --~Academically Excluded
\end{tablenotes}
\end{threeparttable}
\end{table}

\end{document} 

在此处输入图片描述

答案2

解决问题 1 和 2 的一种方法是将置信区间中心设置在相应点估计的下方,通过将区间括在一对花括号中{...}

您可能可以通过-从 中定义的“输入符号”列表中删除(减号)来解决问题 #3 \sisetup{...}。但是,由于表中没有单个-符号,因此无法测试此建议。

在此处输入图片描述

\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}
\sisetup{input-symbols = {( ) -}}
\begin{document}
\begin{table} 
\caption{Presentation of survival data for the full sample ($N = \num{11 959}$)} \label{table:SurvivalAll}

\medskip
Legend:
Y:~Year; RS:~Risk Set; G:~Graduated; AE:~Academically Excluded; C:~Censored; HRG:~Hazard Ratio --~Graduates;
HRAE: Hazard Ratio -- Academically Excluded. 90\% confidence bands given in parentheses below the corresponding point estimates.

\medskip
\begin{tabular*}{\textwidth}{
@{\extracolsep{\fill}}
S[table-format=1.0]
S[table-format=5.0,group-four-digits=true]
S[table-format=4.0]
S[table-format=3.0]
S[table-format=4.0]
S[table-format=2.1]
S[table-format=2.1]
@{}
}
\toprule
{\bfseries Y} & {\bfseries RS} & {\bfseries G} 
& {\bfseries AE} & {\bfseries C} 
& {\bfseries HRG} & {\bfseries HRAE}\\
& & & & & {(\%)} & {(\%)} \\
\midrule
1 & 11959 & 0 & 725 & 1619 & 0.0 & 6.1 \\ 
& & & & &  {(0.0; 0.0)} & {(6.0; 6.1)} \\
2 & 9615 & 0 & 474 & 1513 & 0.0 & 4.9 \\
& & & & &  {(0.0; 0.0)} & {(4.0; 5.0)} \\
3 & 7628 & 1271 & 335 & 966 & 16.7 & 4.4 \\
& & & & &  {(16.0; 17.0)} & {(4.0; 5.0)} \\
4 & 5056 & 2797 & 145 & 405 & 55.3 & 2.9 \\
    & & & & &  {(54.0; 57.0)} & {(2.0; 3.0)} \\
5 & 1709 & 1144 & 77 & 170 & 66.9 & 4.5 \\
    & & & & &  {(65.0; 69.0)} & {(4.0; 5.0)} \\
6 & 318 & 236 & 15 & 24 & 74.2 & 4.7 \\
    & & & & &  {(65.0; 69.0)} & {(4.0; 5.0)} \\
7 & 43 & 27 & 7 & 5 & 62.8 & 16.3 \\ 
& & & & & {(48.0; 77.0)} & {(5.0; 27.0)} \\
8 & 4 & 3 & 0 & 1 & 75.0 & 0.0 \\
& & & & &  {(33.0; 117.0)} & {(0.0; 0.0)} \\
\bottomrule
\end{tabular*}
\end{table}
\end{document}

答案3

你的小问题可以解决

  • 第一个问题:使用~{}before 和 after;

  • 第二个问题:使用\begin{tabular*}{0.95\textwidth}{@{\extracolsep{\fill}}rrrrrcc} 并调整括号中的数字,~{}如代码所示

  • 第三个问题:减号被接受。没有抛出任何错误消息

代码

\documentclass{article}
\usepackage{booktabs}
\usepackage{caption}
\usepackage[online]{threeparttable}
\usepackage{siunitx}
\sisetup{input-symbols = {( ) -}}
\begin{document}

\begin{table} [h]
\centering
\begin{threeparttable}
\caption{Presentation of survival data for the whole sample ($N = \num{11 959}$). }
\label{table:SurvivalAll}
\begin{tabular*}{0.95\textwidth}{@{\extracolsep{\fill}}rrrrrcc}

\toprule
{\bfseries Y} & {\bfseries RS} & {\bfseries G} &
{\bfseries AE} & {\bfseries C} &
{\bfseries HRG} & {\bfseries HRAE}\\
& & & & & {(\%)} & {(\%)} \\
\midrule
1 & -11959 & 0 & 725 & 1619 & -0.0 & 6.1 \\
& & & & & {~{}(0.0{~{};~{}}0.0)} & {(6.0{~{};~{}}6.1)} \\[1ex]
2 & 9615 & 0.0 & 474 & 1513 & 0.0 & 4.9 \\
& & & & & {(0.0{~{};~{}}0.0)} & {(4.0{~{};~{}}5.0)} \\[1ex]
3 & 7628 & 1271 & 335 & 966 & 16.7 & 4.4 \\
& & & & & {~{}(16.0{~{};~{}}17.0)} & {(4.0{~{};~{}}5.0)} \\[1ex]
4 & 5056 & 2797 & 145 & 405 & 55.3 & 2.9 \\
    & & & & & {~{}(54.0{~{};~{}}57.0)} & {(2.0{~{};~{}}3.0)} \\[1ex]
5 & 1709 & 1144 & 77 & 170 & 66.9 & 4.5 \\
    & & & & & {~{}(65.0{~{};~{}}69.0)} &{(4.0{~{};~{}}5.0)} \\[1ex]
6 & 318 & 236 & 15 & 24 & 74.2 & 4.7 \\
    & & & & & {~{}(65.0{~{};~{}}69.0)} & {(4.0{~{};~{}}5.0)} \\[1ex]
7 & -43 & 27 & 7 & 5 & 62.8 & 16.3 \\
& & & & & {~{}(48.0{~{};~{}}77.0)} & {~{}~{}~{}(5.0{~{};~{}}27.0)} \\[1ex]
8 & 4 & 3 & 0.0 & 1 & 75.0 & 0.0 \\
& & & & & {~{}~{}~{}(33.0{~{};~{}}117.0)} & {(0.0{~{};~{}}0.0)} \\
\bottomrule
\addlinespace
\end{tabular*}
\begin{tablenotes}
  \item[Legend:]
Y:~Year; RS:~Risk Set; G:~Graduated; AE:~Academically Excluded; C:~Censored; HRG:~Hazard Ratio --~Graduates;
HRAE: Hazard Ratio --~Academically Excluded
\end{tablenotes}
\end{threeparttable}
\end{table}

\end{document} 

输出

答案3

相关内容