以表格形式对齐行元素

以表格形式对齐行元素

我对对齐有疑问tabular。我使用了代码

\begin{center}
\begin{tabular}{|m{1.5cm}|m{1.5cm}||m{1.5cm}|m{1.5cm}|}
\hline
1& 2 & 7 & 8 \\
0 & 89 & 100 & 55\\
4 & 6  & 4999& 055\\
\hline
\end{tabular}
\end{center}

我想要元素居中。我应该使用什么命令?

答案1

不需要m-type 列,因为它们用于垂直的单元格内容的对齐。你似乎对居中类型的列感兴趣p

enter image description here

\documentclass{article}
\usepackage{array,booktabs}
\begin{document}
\begin{center}
  \begin{tabular}{ *{4}{>{\centering\arraybackslash}p{1.5cm}} }
    \toprule
    1 &  2 &   7  &  8  \\
    0 & 89 &  100 &  55 \\
    4 &  6 & 4999 & 055 \\
    \bottomrule
  \end{tabular}
\end{center}
\end{document}

以上内容表明了一些事情:

  1. 使用booktabs用于表格呈现;

  2. 使用简写形式表示重复的列规范:*{<num>}{<col spec>};和

  3. 使用array>{<before>}用(或)符号表示的列中的每个单元格插入内容<{<after>}


如果你想要按最低有效数字对齐数字,那么可以考虑使用siunitx

enter image description here

\documentclass{article}
\usepackage{booktabs,siunitx}
\begin{document}
\begin{center}
  \sisetup{table-column-width=15mm}
  \begin{tabular}{
      S[table-format=1]%    x
      S[table-format=2]%   xx
      S[table-format=4]% xxxx
      S[table-format=3]%  xxx
    }
    \toprule
    1 &  2 &    7 &   8 \\
    0 & 89 &  100 &  55 \\
    4 &  6 & 4999 & 055 \\
    \bottomrule
  \end{tabular}
\end{center}
\end{document}

请注意,0数字中的 -prefixes 已被删除(应该这样做)。

答案2

\documentclass{article}
\usepackage{array,booktabs,ragged2e}
\newcolumntype{C}[1]{>{\Centering}p{#1}}
\begin{document}
    \begin{center}
        \begin{tabular}{ *4{C{1.5cm}} }% or { C{1.5cm} C{1.5cm} ... }
            \toprule
            1 &  2 &   7  &  8  \\
            0 & 89 &  100 &  55 \\
            4 &  6 & 4999 & 055 \\
            \bottomrule
        \end{tabular}
    \end{center}
\end{document}

相关内容