Problem mit Ausrichtung an Plusminus-Zeichen und Dezimal-Pkt

Tabellen und Grafiken erstellen und anordnen


hannes1985
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: So 22. Jan 2012, 12:05

Problem mit Ausrichtung an Plusminus-Zeichen und Dezimal-Pkt

Beitrag von hannes1985 »

Hallo,

ich möchte in einer Tabelle alle Werte am Plus-Minus Zeichen ausrichten, was soweit wunderbar funktioniert. Gleichzeitig richtet tabularx+siunitx die werte zusätzlich am Dezimal-Punkt aus. Da die Werte sehr verschieden sind (8.8 und 1000) reißt es mir Löcher in die Zellen. Ist es möglich die Ausrichtung am DezimalPunkt zu unterbinden, so dass alle Zahlen links vom Plusminus-Zeichen rechtsbündig sind?
\documentclass[pdftex,bibliography=totoc,listof=totoc,a4paper,11pt]{scrartcl}
%pointlessnumbers,%listof=totoc

\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
  \newcolumntype{C}{>{\centering\arraybackslash}X}
\usepackage{threeparttablex}

\usepackage{mdwlist}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{booktabs}
\usepackage{textcomp}
\usepackage[dvips]{graphicx,color}

\usepackage[format=hang, labelfont={sf,bf}, textfont=sf]{caption,subcaption}   % Schriftart bei Bild und Tabellenunterschriften
  \captionsetup{singlelinecheck=off}
  \DeclareCaptionLabelSeparator{klammerzu}{) } %definiert "`klammerzu"' als neuen Caption label separator (labelsep)
  \DeclareCaptionLabelFormat{klamzu}{\bothIfFirst{#1}{ }#2)} %definiert ein Labelformat mit klammer zu, 
  \captionsetup[sub]{singlelinecheck=true, labelfont={normalsize,sf}, textfont={normalsize,sf}, labelformat=simple}

\usepackage{float}
\usepackage{setspace}
\usepackage{url}
\usepackage{siunitx}
  \sisetup{range-phrase=--,range-units=single}

\begin{document}

\begin{table}[H]
        \centering
	\captionabove{caption text.}
	\label{tab:table1}
\begin{ThreePartTable} 
\begin{tabularx}{\textwidth}{S[table-format=2]CS[separate-uncertainty=true,table-align-uncertainty,table-format=2(1)]S[
separate-uncertainty=true,table-align-uncertainty,table-format=4.1(3)]S[separate-uncertainty=true,table-align-uncertainty,table-format=2.1(1)]S[separate-uncertainty=true,table-align-uncertainty,table-format=3(2)]} \toprule
\multicolumn{1}{c}{text 1} & \multicolumn{1}{c}{text 2}  & \multicolumn{1}{c}{text 3} & \multicolumn{1}{c}{text 4} &
\multicolumn{1}{c}{text 5} & \multicolumn{1}{c}{text 6} \\ \midrule
54    & example  		& 25\pm3 	& 8\pm2		 & 7.2\pm1.1    & 250\pm30 \\
7     &example	& 33\pm2 	& 19.8\pm4 	 & 10\pm2 	& 160\pm30 \\
42    & example 	& 32\pm2 	& 64\pm12	 & 15.4\pm1.0 	& 165\pm16 \\\bottomrule
\end{tabularx}
\begin{tablenotes}\footnotesize 
\item[a] Notes
\end{tablenotes}
\end{ThreePartTable}
\end{table}
\end{document}
Über Hilfe wäre ich sehr dankbar.

Gruß Hannes

Ahnungslos
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: Di 24. Jan 2012, 00:09

Beitrag von Ahnungslos »

Ich weiß nicht, ob dir dies weiterhilft, jedoch hatte ich auch ein Problem in dieser Richtung.
Falls du notfalls akzeptierst, dass große Zahlen z.B. als 1000.0 erscheinen, wäre es sozusagen links vom Plus/Minus gleichmäßig rechtsbündig...
Hier der Link zu meiner Frage und den Lösungsvorschlägen:
http://www.golatex.de/ausrichtung-von-t ... t8119.html

hannes1985
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: So 22. Jan 2012, 12:05

Beitrag von hannes1985 »

An die Möglichkeit dachte ich auch schon, da in der Tabelle aber Messergebnisse präsentiert werden sollen, ist die Angabe von Nachkommastellen bei Fehlern in der Größenordnung von 10-100 in diesem Fall nicht sinnvoll.

Ich brächte eben die Möglichkeit, die Ausrichtung am Punkt zu unterdrücken und die Zahlen links vom +- Zeichen rechtsbündig auszurichte. Im Prinzip so, wie es auf der linken Seite ist.

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Ein Blick in das »siunitx«-Manual kann nicht schaden. v2.4j (2012/01/26) Seite 46 Table 25 listet eine ganze Reihe von Optionen auf, mit denen die Ausrichtung beeinflusst werden kann. Ich nehme an, das hier sollte funktionieren:
\sisetup{table-align-uncertainty = false}
Gruß
Clemens
Paketauthor

hannes1985
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: So 22. Jan 2012, 12:05

Beitrag von hannes1985 »

Durch
\sisetup{table-align-uncertainty = false}
wird ja die Ausrichtung am +--Zeichen deaktiviert. Diese soll ja bestehen bleiben. Was ich möchte, ist, dass es so aussieht:
_ _ _ _ _ _ 8+-2
_ _ _ _29.18+-0.015
_ _ _ _ __64+-12

und nicht so:
_ _ _ _8_ +-2
_ _ _ 29.8+-4.0
_ _ _ 64_ +-12

(Die Unterstriche sollen freien Platz darstellen, ging von der Formatierung nicht anders.)
Im Manual ist dazu meines Wissens nichts zu finden.

Gruß Hannes

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

hannes1985 hat geschrieben:[...] wird ja die Ausrichtung am +--Zeichen deaktiviert. Diese soll ja bestehen bleiben.
Sorry. Nachricht an mich: Fragen kann man auch aufmerksam lesen. :!:

Ich glaube, das, was Du möchtest, ist durch siunitx tatsächlich erst mal nicht vorgesehen.
Clemens
Paketauthor

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Das hier ist Cheating, verursacht »overfull hbox« Warnungen, kommt dem aber wohl nahe:
\documentclass{article}
\usepackage{siunitx}
\begin{document}

\sisetup{
  separate-uncertainty    = true ,
  table-format            = 2.2(2) ,
  table-align-uncertainty = true
}

\begin{table}
 \begin{tabular}{S|S|S}\hline
   1.12 (72) & 57.65 (4)  &   .53 (12) \\
  76.5  (2)  &  4.2  (12) & 12.3  (45)
 \end{tabular}
 \caption{Ausrichtung an $\pm$ und Komma}
\end{table}

\newcolumntype{N}{S[table-number-alignment=right,table-parse-only]}
\newcolumntype{U}{S[explicit-sign={\pm\,},table-format=+1.2]}

\begin{table}
 \begin{tabular}{NU|NU|NU}\hline
   1.12 & .72 & 57.65 & .4  &   .53 & .12 \\
  76.5  & .2  &  4.2  & .12 & 12.3  & .45
 \end{tabular}
 \caption{Ausrichtung nur an $\pm$}
\end{table}

\end{document}
(alle Tabellenlinien dienen nur der visuellen Orientierung)
Clemens
Paketauthor

hannes1985
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: So 22. Jan 2012, 12:05

Beitrag von hannes1985 »

Das kommt meinem Ziel wirklich ziemlich nahe. Und der Zeitaufwand zur Änderung sollte sich auch in Grenzen halten. Sollte sich keine bessere Lösung auftun, werde ich das so machen.

Vielen Dank schon einmal.

Gruß Hannes

Antworten