siunitx で整数の列を正しく中央揃えする方法

siunitx で整数の列を正しく中央揃えする方法

私は、列を中央揃えにしながら数字の小数点揃えを維持するという、テーブルで必要な機能を果たすと思われる を発見しましたsiunitx。しかし、これは整数の列 (たとえば 99、9、99、99) では機能しません。数字は互いに正しく揃えられていますが、列内では正しく中央揃えされておらず、本来あるべき位置より 1 つまたは 2 つ左にずれています。私はsiunitxオプションを変更せずに を使用し、列タイプとして単純な {S} を使用しています。これは、小数点付きの数字の列では正常に機能しますが、整数の列では間違った結果になります。

答え1

オプションを使用してtable-format、表内の数字の各部分にどれだけのスペースを確保するかを指定できます。たとえば、最大 3 桁の整数がある場合、 を使用して、table-format=3小数点なしで 3 桁の整数用のスペースを確保できます。

コメントに記載されているように、このオプションは、使用時に列定義にオプションを渡すことによって、列ごとに設定することもできます。

次に例を示します。

\documentclass{article}
\usepackage{siunitx}

\begin{document}

\begin{table}
  \sisetup{
    table-format = 2,
  }
  \begin{tabular}{SSS}
    A  & B  & C  \\
    15 &  3 &  2 \\ 
    20 &  2 & 19 \\ 
    25 & 24 &  4 \\ 
  \end{tabular}
\end{table}

\begin{table}
  \begin{tabular}{
      S[table-format=2.3] % with space for integers and decimals
      S[table-format=2]   % with space for integers only
      S                   % as the default
    }
    A  & B  & C  \\
    15 &  3 &  2 \\ 
    20 &  2 & 19 \\ 
    25 & 24 &  4 \\ 
  \end{tabular}
\end{table}

\end{document}

整列された整数は次のようになります。

ここに画像の説明を入力してください

関連情報