So bringen Sie siunitx dazu, Spalten mit Ganzzahlen richtig zu zentrieren

So bringen Sie siunitx dazu, Spalten mit Ganzzahlen richtig zu zentrieren

Ich habe gerade entdeckt siunitx, dass es bei Tabellen das zu tun scheint, was ich will, nämlich eine Spalte zu zentrieren, aber die Zahlen dezimal auszurichten. Ich habe festgestellt, dass es bei einer Spalte mit ganzen Zahlen (z. B. 99, 9, 99, 99) nicht funktioniert. Die Zahlen sind untereinander richtig ausgerichtet, aber innerhalb der Spalte nicht richtig zentriert, sondern um ein oder zwei Positionen nach links verschoben, wo sie sein sollten. Ich verwende es siunitxohne Änderung der Optionen und nur ein einfaches {S} als Spaltentyp. Bei Spalten mit Zahlen und Dezimalstellen funktioniert es einwandfrei, aber bei Spalten mit ganzen Zahlen wird es falsch ausgegeben.

Antwort1

Mit dieser Option können Sie table-formatangeben, wie viel Platz für jeden Teil der Zahlen in der Tabelle reserviert werden soll. Wenn Sie beispielsweise ganze Zahlen mit bis zu 3 Ziffern haben, können Sie mit table-format=3Platz für 3 ganze Ziffern reservieren und keine Dezimalstellen.

Wie in den Kommentaren angegeben, kann diese Option auch für jede Spalte einzeln festgelegt werden, indem die Optionen bei Verwendung an die Spaltendefinition übergeben werden.

Hier ist ein Beispiel:

\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}

So sehen die ausgerichteten Ganzzahlen aus:

Bildbeschreibung hier eingeben

verwandte Informationen