Wie kann man Zahlen nach \pm ausrichten, aber nicht nach Punkten?

Wie kann man Zahlen nach \pm ausrichten, aber nicht nach Punkten?

Wie kann man Zahlen nach \pm ausrichten, aber nicht nach Punkten? Jede Zeile sollte auch eine andere Anzahl von Dezimalstellen haben.

\documentclass{article}
\usepackage{siunitx}


\begin{document}
\begin{table}
\caption{}
\centering
\small
\sisetup{separate-uncertainty}
\begin{tabular}{lS[table-format = 5.4(1)]}
\hline\hline\noalign{\smallskip}
Parameter & Value \\
\noalign{\smallskip}\hline\noalign{\smallskip} 
A   & 26.5 \pm 2.0      \\
B   & 11.102 \pm 1.2 \\
C   & 53839  \pm 550 \\
D   & 0.5863     \pm 0.016 \\

\noalign{\smallskip}\hline\noalign{\smallskip}
\end{tabular}
\end{table}

\end{document}

Bildbeschreibung hier eingeben

Antwort1

Alsdiese Antwortschlägt vor, dass die Svom Paket bereitgestellte Spalte siunitxnur über bestimmte Ausrichtungsfunktionen verfügt, die Zahlen in erster Linie an das Dezimaltrennzeichen anpassen, was nicht das ist, was Sie möchten.

Ich würde daher vorschlagen, dass Sie die oben verlinkte nette Antwort anpassen und die Ausrichtung manuell vornehmen, ohne das siunitxPaket zu verwenden. Da ich nicht weiß, wie Sie die Zahlen hinter dem Schild ausrichten möchten \pm, biete ich unten zwei alternative Lösungen an. Ich würde auch vorschlagen, einen Blick auf das booktabsPaket zu werfen:

\documentclass{article}
%\usepackage{siunitx}
\usepackage{booktabs}

\begin{document}

\begin{tabular}{ l r @{\,\( \pm \)\,} r }
\toprule
{Parameter} & \multicolumn{2}{c}{Value} \\
\midrule
A   & 26.5   & 2.0   \\
B   & 11.102 & 1.2   \\
C   & 53839  & 550   \\
D   & 0.5863 & 0.016 \\
\bottomrule
\end{tabular}

\bigskip

\begin{tabular}{ l r @{\,\( \pm \)\,} l }
\toprule
{Parameter} & \multicolumn{2}{c}{Value} \\
\midrule
A   & 26.5   & 2.0   \\
B   & 11.102 & 1.2   \\
C   & 53839  & 550   \\
D   & 0.5863 & 0.016 \\
\bottomrule
\end{tabular}

\end{document}

Bildbeschreibung hier eingeben

Antwort2

Mir ist nicht bekannt, dass siunitxich eine Funktion implementiert habe, um Zahlen um Unsicherheitsmarkierungen herum zu zentrieren. Vielleicht ist das so und ich weiß nichts davon. Die einzige Lösung, die mir einfällt, ist, die Zahlen in zwei Spalten aufzuteilen, um den Effekt zu erzielen. Sie könnten sie immer noch verwenden, siunitxum beispielsweise Zahlen auf einige Dezimalstellen zu runden. Ansonsten siunitxist es nicht erforderlich

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{siunitx}
\newcommand\ustrut{\rule{0pt}{12pt}}
\newcommand\lstrut{\rule[-6pt]{0pt}{12pt}}


\begin{document}
\begin{table}
  \sisetup{
    round-mode=figures,
    round-precision=3,
    table-alignment-mode=none,
    separate-uncertainty,
  }
  \caption{}
  \centering
  \small
  \begin{tabular}{
      l
      S[table-number-alignment=right]
      @{\(\;\pm\;\)}
      S[table-number-alignment=left]
    }
    \hline\hline
    \ustrut Parameter & \multicolumn{2}{c}{Value\lstrut}\\
    \hline\ustrut
    A   &   26.5 & 2.0 \\
    B   & 11.102 & 1.2 \\
    C   &  53839 & 550 \\
    D   & 0.5863 & 0.016 \lstrut \\
    \hline
  \end{tabular}
  \end{table}
\end{document}

verwandte Informationen