siunitx:将数字的小数部分分为两组而不是三组

siunitx:将数字的小数部分分为两组而不是三组

以下问题可能已在此网站上得到解答,但我在问题/答案档案中找不到任何内容。

如何使用siunitx将数字的小数部分分为两组而不是三组?

我已查阅过手册,但没有找到任何与该确切问题有关的内容。

答案1

如果你想两个都小数部分和整数部分可以两两分组,这可以通过选项来实现digit-group-first-size=2, digit-group-other-size=2。但是,如果您希望对两个部分进行不同的分组,则需要一个宏来分离整数部分和小数部分,并将所需的设置应用于这两个部分:

在此处输入图片描述

代码:

\documentclass{article}
\usepackage{siunitx}
\usepackage{xstring}

\makeatletter
\newcommand{\numI}[1]{%
    \StrBehind{#1}{.}[\@DecimalPart]%
    \StrBefore{#1}{.}[\@IntegerPart]%
    \num[
        digit-group-first-size=3,  digit-group-other-size=3,
    ]{\@IntegerPart}%
    \num[
        digit-group-first-size=2,  digit-group-other-size=2,
    ]{.\@DecimalPart}%
}
\makeatother

\begin{document}
    $\numI{123456789.123456789}$
\end{document}

相关内容