我该如何解决第 3 列中的这个问题?单词移到了顶部。

我该如何解决第 3 列中的这个问题?单词移到了顶部。
\documentclass{article}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\begin{document}
\begin{table}[h]
\centering
\caption{The results.} 
\label{my-label}
\begin{tabular}{|C{3cm}|C{3cm}|C{3cm}|}
\hline
{\bf Groups Name}         & {\bf Variance} & {\bf Standard  Deviation} \\[5ex] \hline
{\bf Subject (Intercept)} & 12.45 & 3.529  \\[2ex] \hline
{\bf Residuals}           & 237.09          & 15.398                      \\[2ex] \hline
\end{tabular}
\end{table}
\end{document}

在此处输入图片描述

答案1

我会以不同的方式布置餐桌:

  • 只有几条水平线(看起来更专业)。包装booktabs有帮助。

  • 数字按小数点对齐,请参阅包siunitx

  • 该包caption修复了表格上方表格标题周围的垂直间距。

  • 多行单元格通过 inner 生成tabulars,可选参数控制垂直对齐(默认:垂直居中,t= 顶部,b= 底部)。

  • 第二个表格对左列使用左对齐,并对表格行的后续行使用缩进。这避免了行之间出现额外的空间,就像第一个表格中所做的那样,读者可以轻松找到表格行的开头。

  • LaTeX2e 使用\bfseries而不是已弃用的\bf。 的表格单元格已包含隐式组,因此不需要tabular周围的花括号。\bfseries

例子:

\documentclass{article}
\usepackage{array}
\usepackage{booktabs}
\usepackage{caption}
\usepackage{siunitx}

\begin{document}
\begin{table}
  \centering
  \caption{The results.}
  \label{my-label}
  \begin{tabular}{cS[table-format=3.2]S[table-format=2.3]}
    \toprule
    \bfseries Groups Name & \bfseries Variance &
    \bfseries
    \begin{tabular}[b]{@{}c@{}}Standard\\Deviation\end{tabular} \\
    \midrule
    \bfseries
    \begin{tabular}[t]{@{}c@{}}Subject\\(Intercept)\end{tabular} &
    12.45 & 3.529  \\
    \addlinespace
    \bfseries Residuals & 237.09 & 15.398 \\
    \bottomrule
  \end{tabular}

  \bigskip

  \begin{tabular}{lS[table-format=3.2]S[table-format=2.3]}
    \toprule
    \bfseries Groups Name & \bfseries Variance &
    \bfseries
    \begin{tabular}[b]{@{}l@{}}Standard\\Deviation\end{tabular} \\
    \midrule
    \bfseries
    \begin{tabular}[t]{@{}l@{}}Subject\\\hspace*{1em}(Intercept)\end{tabular} &
    12.45 & 3.529  \\
    \bfseries Residuals & 237.09 & 15.398 \\
    \bottomrule
  \end{tabular}
\end{table}
\end{document}

结果

答案2

我建议你不是\\[5ex]通过和创造大量额外的垂直空间\\[2ex]。相反,只需将参数重置\arraystretch为 之类的值即可1.8

在此处输入图片描述

\documentclass{article}
\usepackage[skip=0.5\baselineskip]{caption}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash\hspace{0pt}}m{#1}}
\begin{document}
\begin{table}[h]
\renewcommand\arraystretch{1.8}
\centering
\caption{The results.} 
\label{my-label}
\begin{tabular}{|C{3cm}|C{3cm}|C{3cm}|}
\hline
\textbf{Groups Name} & \textbf{Variance} & \textbf{Standard  Deviation} \\ \hline
\textbf{Subject (Intercept)} & 12.45 & 3.529  \\ \hline
\textbf{Residuals}    & 237.09   & 15.398  \\ \hline
\end{tabular}
\end{table}
\end{document}

答案3

还有一个答案:

\documentclass{article}
\usepackage{siunitx}
\usepackage{array,makecell}
    \newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
    \renewcommand\theadfont{\bfseries}
\usepackage{caption}

    \begin{document}
\begin{table}[h]
    \centering
    \renewcommand\arraystretch{1.5}
\caption{The results.}
\label{my-label}
\begin{tabular}{|>{\bfseries}C{3cm}|S[table-format=3.2]|S[table-format=3.2]|}
\hline
Groups Name         & \textbf{Variance} &{\thead{Standard\\Deviation}}  \\  \hline
Subject (Intercept) &  12.45            & 3.529                         \\  \hline
Residuals           & 237.09            & 15.398                        \\  \hline
\end{tabular}
\end{table}
    \end{document}

它部分结合了 Mico 和 egreg 的答案。添加makecell包后,获得的表的查找结果接近 OP 所需的表:

在此处输入图片描述

相关内容