表中含有小數的一大數

表中含有小數的一大數

我正在使用 siunitx 來對齊列中的數字。問題是我故意在開頭得到一行,這是一個很大的數字,每 1,000 個用“,”表示。請參閱以下範例。

我想實現的目標:

1) 將小數與小數點「.」對齊這是第 2、3 和 4 行。

2) 將大數字置中,即本例中的第 1 行和第 5 行。當我測試不同的選項時,大數字總是太多在左邊,或是太多在右邊。如果可能的話,它們應該簡單地居中。我相信這在格式方面最有意義。

是否可以?

\documentclass{article}
\usepackage{siunitx}

\sisetup{%
input-ignore={,},
input-decimal-markers = {.},
table-format = 2.2,
table-number-alignment = center,
}%

\begin{document}
\begin{tabular}{SS}
row & alignToDec \\
row1: & 19,000,000.0 \\
row2: & 12.38 \\
row3: & 1.97  \\
row4: & 91.01  \\
row5: & 87,000,000.0 \\
\end{tabular}
\end{document}

答案1

由於某種原因,您的程式碼可以編譯,但是:

1)您不應該(至少您沒有理由這樣做)S對不包含數學的列使用列類型。

2) 如果「S」列內的儲存格內容是文本,請將其放在花括號內。 (這樣,內容將預設從 siunitx 居中,因為它將被視為文字)。 [如果在大括號之外,請在第二列中查看“損壞的”alignToDec,並將其放在大括號內以查看差異]

3)對你的大數字使用與上面相同的方法...

4) 您可以table-format在列中將 指定為選用參數S。 (siunitx一般情況下這樣表現較好)

\documentclass{article}
\usepackage{siunitx}

\sisetup{%
input-ignore={,},
input-decimal-markers = {.},
table-number-alignment = center,
}%

\begin{document}
\begin{tabular}{cS[table-format=2.2]}
row & {alignToDec} \\
row1: & {19,000,000.0} \\
row2: & 12.38 \\
row3: & 1.97  \\
row4: & 91.01  \\
row5: & {87,000,000.0} \\
\end{tabular}
\end{document}

在此輸入影像描述

PS:去掉luatex標籤。

相關內容