LyX 中的右居中列

LyX 中的右居中列

这与我的主题非常接近:如何将整数右对齐,但仍使其居中。但是,我无法让它在 LyX 下工作。这是我的代码:

\begin{table}[H]
\centering
\begin{threeparttable}\caption{\textbf{\label{tab:uebersicht-alle-mspatienten}Untersuchungsergebnisse der soziodemographischen und neurologischen Parameter aller untersuchten MS-Patienten} }
\begin{tabular}{>{\raggedright}p{0.35\columnwidth}>{\centering}p{0.1\columnwidth}>{\centering}p{0.1\columnwidth}>{\centering}p{0.1\columnwidth}>{\centering}p{0.1\columnwidth}}
\toprule 
 & \textbf{Anzahl (n)} & \textbf{Prozent} & \textbf{Mittelwert} & \textbf{SD}\tabularnewline
\midrule
\midrule 
\textbf{Patienten} & 180 &  &  & \tabularnewline
\midrule 
\textbf{Alter} (in Jahren) &  &  & 43,9 & 13,1\tabularnewline
\midrule 
\textbf{Geschlecht:}
- Weiblich
- Männlich & ~
125
55 & ~
69,4
30,6 &  & \tabularnewline
\midrule 
\textbf{Erkrankungsdauer der MS}
(in Jahren) &  &  & 12,3 & 8,8\tabularnewline
\midrule 
\textbf{Verlaufsform:}
- RRMS
- SCP
- PPMS
- CIS & ~
86
67
24
3 & ~
47,8
37,2
13,3
1,7  &  & \tabularnewline
\midrule 
\end{tabular}
\end{threeparttable}
\end{table}

它产生以下(正确的)输出:

但是,如果我将第一行更改为:

\begin{tabular}{>{\raggedright}p{0.35\columnwidth}S[table-format=3.0]>{\centering}p{0.1\columnwidth}>{\centering}p{0.1\columnwidth}>{\centering}p{0.1\columnwidth}}

它给出了以下(不正确的)输出:

我的版本siunitx来自2.2i (2011/06/15)TeX Live 2011。

答案1

环境列规范中包含的元素tabular应被视为类似于可能带有参数的单字母命令。例如,S[<key-value list>]表示S根据 (可选) 设置的参数的列<key-value list>。将其括在括号中

\begin{tabular}{...{S[table-format=3.0]}...}

混淆了 LaTeX。删除括号应该可以解决您的问题:

\begin{tabular}{...S[table-format=3.0]...}

另请记住包括siunitx包裹,因为它定义了S列类型。


下面是使用时输入产生正确布局的最小示例siunitx

在此处输入图片描述

\documentclass{article}
\usepackage{siunitx}% http://ctan.org/pkg/siunitx
\usepackage{booktabs}% http://ctan.org/pkg/booktabs
\usepackage{threeparttable}% http://ctan.org/pkg/threeparttable
\begin{document}
\begin{table}[H]
  \centering
  \begin{threeparttable}
    \caption{\textbf{\label{tab:uebersicht-alle-mspatienten}Untersuchungsergebnisse der soziodemographischen 
      und neurologischen Parameter aller untersuchten MS-Patienten}}
%    \begin{tabular}{>{\raggedright}p{0.35\columnwidth}
%        >{\centering}p{0.1\columnwidth}
%        >{\centering}p{0.1\columnwidth}
%        >{\centering}p{0.1\columnwidth}
%        >{\centering}p{0.1\columnwidth}}
    \begin{tabular}{>{\raggedright}p{0.35\columnwidth}
        S[table-format=3.0]
        >{\centering}p{0.1\columnwidth}
        >{\centering}p{0.1\columnwidth}
        >{\centering}p{0.1\columnwidth}}
      \toprule 
      & \textbf{Anzahl (n)} & \textbf{Prozent} & \textbf{Mittelwert} & \textbf{SD}\tabularnewline
      \midrule
      \midrule 
      \textbf{Patienten} & 180 &  &  & \tabularnewline
      \midrule 
      \textbf{Alter} (in Jahren) &  &  & 43,9 & 13,1\tabularnewline
      \midrule 
      \textbf{Geschlecht:} \tabularnewline
      - Weiblich & 125 & 69,4 & & \tabularnewline
      - M\"{a}nnlich & 55 & 30,6 &  & \tabularnewline
      \midrule
      \textbf{Erkrankungsdauer der MS}
      (in Jahren) &  &  & 12,3 & 8,8 \tabularnewline
      \midrule
      \textbf{Verlaufsform:} \tabularnewline
      - RRMS & 86 & 47,8 \tabularnewline
      - SCP & 67 & 37,2 \tabularnewline
      - PPMS & 24 & 13,3 \tabularnewline
      - CIS & 3 & 1,7 &  & \tabularnewline
      \midrule 
    \end{tabular}
  \end{threeparttable}
\end{table}
\end{document}

TeX 逐行构建表格 ( tabular)。您的代码(至少是代码片段中给出的代码)似乎不允许这种逐行构建。具体来说,例如,

\textbf{Verlaufsform:}
- RRMS
- SCP
- PPMS
- CIS & ~
86
67
24
3 & ~
47,8
37,2
13,3
1,7  &  & \tabularnewline

需要修改为

\textbf{Verlaufsform:} \tabularnewline
- RRMS & 86 & 47,8 \tabularnewline
- SCP & 67 & 37,2 \tabularnewline
- PPMS & 24 & 13,3 \tabularnewline
- CIS & 3 & 1,7 &  & \tabularnewline

否则,所有看起来应该在同一列(一个接一个)中处理的条目最终都会出现在一行中的同一列中。TeX 的输出将与您的代码布局作为输入不匹配 - 您需要明确说明列的分隔位置(使用&),就像您明确说明行的结束位置(使用\\\tabularnewline)一样。

相关内容