表格:将逗号分隔的数字对按逗号对齐

表格:将逗号分隔的数字对按逗号对齐

我有一张表格,其中的条目是两个(有理数/整数)数字,用逗号分隔。是否可以在每一列中 (a) 保持列标签 $L$、$M$ 和 $R$ 居中,并且 (b) 对齐条目以使逗号对齐?

\documentclass{article}
\usepackage{array}
\begin{document}
\begin{table}
  \centering
  \setlength{\extrarowheight}{3pt}
  \begin{tabular}{c|ccc|}
       \multicolumn{1}{c}{} & \multicolumn{1}{c}{$L$} & \multicolumn{1}{c}{$M$} & \multicolumn{1}{c}{$R$} \\ \cline{2-4}
       $T$                  & $-1, \frac{3}{5}$       & $3,4$                   & $0,-1$                  \\
       $B$                  & $1,-8$                  & $2,-4$                  & $0,1$                   \\ \cline{2-4}
    \end{tabular}
\end{table}
\end{document}

在此处输入图片描述

答案1

包裹是你的朋友。

在此处输入图片描述

附录:此处使用的代码中,逗号周围没有插入空格填充。如果您希望逗号周围有空格,例如\thinspace(又名\,),只需更改\newcolumntype{C}{D{,}{,}{2.2}}为即可\newcolumntype{C}{D{,}{\,,\,}{2.2}}

\documentclass{article}
\usepackage{dcolumn}        % for 'D' column type
\newcolumntype{C}{D{,}{,}{2.2}} % center cell contents on commas
\newcommand\mc[1]{\multicolumn{1}{c}{#1}} % handy shortcut macro

\begin{document}
\begin{table}
\centering
\setlength{\extrarowheight}{3pt}
  $\begin{array}{c|CCC|}
  \mc{} & \mc{L} & \mc{M} & \mc{R} \\ 
  \cline{2-4}
    T & -1, \frac{3}{5} & 3,4  & 0,-1  \\
    B & 1,-8            & 2,-4 & 0,1   \\ 
  \cline{2-4}
  \end{array}$
\end{table}
\end{document}

答案2

我确信有比这个解决方案更好的方法。我为每个数字和逗号使用了单独的列。通过选择rcl对齐方式并调整列间距,您可以实现所需的效果。

我使用了包tblr中的环境tabularray,因为它大大简化了设置正确间距的命令。

\documentclass{article}

\usepackage{tabularray}

\begin{document}
    
\begin{table}
    \centering
    \begin{tblr}{
            colspec={c*{3}{rcl}}, cells={mode=math},
            vline{2,Z}={2-Z}{solid}, hline{2,Z}={2-Z}{solid},
            column{2,5,8}={rightsep=0pt},
            column{3,6,9}={colsep=0pt},
            column{4,7,10}={leftsep=0pt},
        }
        & \SetCell[c=3]{c} L &&& \SetCell[c=3]{c} M &&& \SetCell[c=3]{c} R && \\
        T & -1 & , & \frac{3}{5} & 3 & , & 4  & 0 & , & -1 \\
        B & 1  & , & -8          & 2 & , & -4 & 0 & , & 1  \\
    \end{tblr}
\end{table}

\end{document}

桌子

关于行间距,tblr默认情况下垂直间距更大。您可以根据需要调整它,例如在 的参数中使用rowsep=4pt(default ) 。2pt\begin{tblr}

答案3

使用自定义表格前言,这里我在和列,\,之间使用分隔符。rl

\documentclass{article}
\usepackage{array}

\begin{document}


$\setlength{\extrarowheight}{3pt}
\begin{array}{ c | *{3}{r @{,\,} l}|}
\multicolumn{1}{c}{} &
\multicolumn{2}{c}{L} &
\multicolumn{2}{c}{M} &
\multicolumn{2}{c}{R} \\
\cline{2-7}
T & -1 & \frac{3}{5} & 3 &  4 & 0 & -1 \\
B &  1 & -8          & 2 & -4 & 0 &  1 \\
\cline{2-7}
\end{array}$

\end{document}

在此处输入图片描述

相关内容