将表格中的数字与括号对齐

将表格中的数字与括号对齐

我正在尝试使用 Latex 来呈现财务报表。大部分工作涉及表格环境,其中数字显示在我已设置为右侧不规则的列中。我的问题是对齐数字,以便括号中的负数与上下正数对齐。没有小数点可以用来对齐数字。我试过添加hspace正数,但这不起作用; 也不起作用\quad\qquad无法从谷歌等处找到任何帮助。这就是我希望的 mwe。

\documentclass[12pt]{report}
\usepackage[top=.8in,bottom=.89in,left=1.25in,right=1.5in]{geometry}
\usepackage[UKenglish]{babel}
\usepackage{amsmath,amssymb,mathtools}
\usepackage{array,booktabs}
\usepackage{parskip}
\usepackage{siunitx}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\begin{document}
\begin{tabular}{p{3.5in}p{1in}R{1in}} %
Turnover &  & 24,500\\ 
Direct Costs &  & (12,250)\\ 
Gross Profit &  & 12,500\\ 
\end{tabular} 
\end{document}

我是在试图做不可能的事还是忽略了一些显而易见的事情?任何帮助都将不胜感激。

答案1

由于您已开始加载siunitx, 用它。

代码

\documentclass[varwidth]{standalone}
\usepackage{siunitx}
\begin{document}\noindent
\begin{tabular}{lS[table-format=5.0, table-space-text-pre={(},table-space-text-post={)}]}
    Turnover     &    24500    \\
    Direct Costs & {(}12250{)} \\
    Gross Profit &    12500
\end{tabular}
\end{document}

输出

在此处输入图片描述

答案2

您可以使用dcolumn十进制数来对齐,(或者.如果您愿意)`。

新的列类型可以通过 来定义D{,}{,}{4}。2,将 设置,为输入和输出分隔符,4代表要对齐的小数点。

(我稍微修改了你的代码。)

代码

\documentclass[12pt]{report}
\usepackage[top=.8in,bottom=.89in,left=1.25in,right=1.5in]{geometry}

\usepackage{dcolumn}
\newcolumntype{d}{D{,}{,}{4}}

\begin{document}
\begin{tabular*}{.95\linewidth}{@{\extracolsep{\fill}}ld@{}}
Turnover     &  24,500 \\ 
Direct Costs & (12,250)\\ 
Gross Profit &  12,500 \\ 
\end{tabular*} 
\end{document}

答案3

一个简单的技巧是通过以下方式打印正数的不可见括号\hphantom

\documentclass[12pt]{report}
\usepackage[top=.8in,bottom=.89in,left=1.25in,right=1.5in]{geometry}
\usepackage[UKenglish]{babel}
\usepackage{amsmath,amssymb,mathtools}
\usepackage{array,booktabs}
\usepackage{parskip}
\usepackage{siunitx}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\begin{document}
\begin{tabular}{p{3.5in}p{1in}R{1in}} %
Turnover &  & 24,500\hphantom{)}\\
Direct Costs &  & (12,250)\\
Gross Profit &  & 12,500\hphantom{)}\\
\end{tabular}
\end{document}

相关内容