Seite 1 von 1

Spaltenbreit und Tabellenköpfe mit siunitx

Verfasst: Di 22. Jan 2019, 15:40
von Erdbert
Liebe Gemeinde,

für meine Dissertation fange ich gerade an Tabelln zu erstellen. Hierfür nutze ich siuntix, leider gestalten sich das ganze jedoch noch recht schwierig. Bei der Darstellung des Mittelwertes +- Standartabweichung scheint sich der Spaltenkopf zu verschieben. In den anderen Spaltenköpfen habe ich eine Zentrierung duch die benutzung von \multicolumn erreicht, bei der Mittelwertsangaben funktioniert das leider nicht.
Ein zweites Problem welches auftritt ist die Breite der zweiten Mittelwerts/Standartabweichungs Spalte. Trotz angabe der Dezimalstellen in der Spaltendefinition wird diese deutlich zu klein.

Vielleicht wisst ihr ja ein Lösung,
ich danke euch schonamal für eure Hilfe
%Präambel
\documentclass[a4paper,titlepage,12pt,toc=listof,toc=bib,oneside,numbers=noenddot,parskip=full-]{scrbook}
	\pagenumbering{Roman} %römische Seitenzahlen
\usepackage[%per=slash,
            decimalsymbol=comma,
            locale = DE,
            loctolang={DE:ngerman,UK:english},
            ]{siunitx}
\sisetup{%
detect-weight, % Schrifttyp übernehmen (bold, kursiv etc)
detect-family, %Schriftart des Umgebungstextes übernehmen (mit/ohne Serifen)
separate-uncertainty=true,
mode=text}
\usepackage{booktabs}

\begin{document}
\begin{table}[htbp]
	\centering
	\caption{Fancy Caption}
	\sisetup{table-number-alignment = center,table-format = 1.3}
	\begin{footnotesize}
	\begin{tabular}{
			l
			S[table-format = 3.2,table-figures-uncertainty = 1]
			S
			S
			>{{[}} % Add square bracket before column
			S[table-space-text-pre={[}]
			@{;\,} % Add comma and thin-space between the columns
			S[table-space-text-post={]}]
			<{{]}} % Add square bracket after column
			S[table-format = 4.2,table-figures-uncertainty = 1]
			S
			S[table-format = <1.3]
			>{{[}} % Add square bracket before column
			S[table-space-text-pre={[}]
			@{;\,} % Add comma and thin-space between the columns
			S[table-space-text-post={]}]
			<{{]}} % Add square bracket after column
		}\toprule
				& \multicolumn{5}{c}{\textbf{\^F}} & \multicolumn{5}{c}{\textbf{\^P}}\\\cmidrule(lr){2-6}\cmidrule(lr){7-11}
\textbf{m}\textsubscript{j} 	& \multicolumn{1}{c}{{$\bar{x}\pm\sigma$}} & \multicolumn{1}{c}{\textit{r}} & \multicolumn{1}{c}{\textit{p}} & \multicolumn{2}{c}{\si{90}{\percent} CI} & {$\bar{x}\pm\sigma$} & \multicolumn{1}{c}{\textit{r}} & \multicolumn{1}{c}{\textit{p}} & \multicolumn{2}{c}{\si{90}{\percent} CI}\\\midrule
700				& 192,21(2612) & 0,850 & 0,002 & 0,561 & 0,954 & 3768,71(71119)  & 0,854 & 0,002 & 0,571 & 0,956\\
800				& 205,76(3452) & 0,857 & 0,002 & 0,579 & 0,957 & 4030,54(99770)  & 0,890 & <0,001& 0,665 & 0,967\\ 
900				& 267,50(5046) & 0,793 & 0,060 & 0,129 & 0,966 & 4991,84(127641) & 0,866 & 0,026 & 0,352 & 0,978\\\bottomrule
	\end{tabular}
	\end{footnotesize}
\end{table}
\end{document}


Verfasst: Di 22. Jan 2019, 18:46
von Bartman
Schriftgrößenumschaltungen als Umgebungen?

In der Dokumentation von siunitx wird die Beschaffenheit des Befehls \si erläutert. Für Ungeduldige gibt es bereits im dritten Abschnitt eine Übersicht.

Ich weiß nicht, ob table-figures-uncertainty dafür gedacht ist, aber ein größerer Wert schafft etwas Abstand zwischen der Spalte für den zweiten Mittelwert und der nächsten Spalte.

Falls die \textit-Befehle ein Ersatz für die Darstellung einer Variablen im mathematischen Modus sein sollen, dann geht es mit den Dollarzeichen auch kürzer.

Wie showframe zeigen dürfte, ist die Tabelle trotz der Verringerung der Schriftgröße immer noch zu breit.

Verfasst: Mi 23. Jan 2019, 08:54
von Erdbert
Hallo Bartman,

vielen Dank für die Hinweise. Das Breitenproblem der Spalten hat sich gelöst mit der Vergrößerung des table-figures-uncertainty Wertes. Anscheinend löst die richtig gwählt Größe auch das Ausrictungsproblem des Tabellenkopfes (Hilft jetz aber nicht unbedingt beim Platzproblem der Gesamttabelle). Ich hoffe auch, dass die Aufstellung einer neuen Umgebung für die Schriftgröße in der Tabelle so passt.
%Präambel
\documentclass[a4paper,titlepage,12pt,toc=listof,toc=bib,oneside,numbers=noenddot,parskip=full-]{scrbook}
	\pagenumbering{Roman} %römische Seitenzahlen
\usepackage[%per=slash,
            decimalsymbol=comma,
            locale = DE,
            loctolang={DE:ngerman,UK:english},
            ]{siunitx}
\sisetup{%
detect-weight, % Schrifttyp übernehmen (bold, kursiv etc)
detect-family, %Schriftart des Umgebungstextes übernehmen (mit/ohne Serifen)
separate-uncertainty=true,
mode=text}
\usepackage{booktabs}
\usepackage{showframe}
\newenvironment{tablesize}{\par\footnotesize}{\par}

\begin{document}
\begin{table}[htbp]
	\centering
	\caption{Fancy Caption}
	\sisetup{table-number-alignment = center,table-format = 1.3}
	\begin{tablesize}
	\begin{tabular}{
			l
			S[table-format = 3.2,table-figures-uncertainty = 5]
			S
			S
			>{{[}} % Add square bracket before column
			S[table-space-text-pre={[}]
			@{;\,} % Add comma and thin-space between the columns
			S[table-space-text-post={]}]
			<{{]}} % Add square bracket after column
			S[table-format = 4.2,table-figures-uncertainty = 6]
			S
			S[table-format = <1.3]
			>{{[}} % Add square bracket before column
			S[table-space-text-pre={[}]
			@{;\,} % Add comma and thin-space between the columns
			S[table-space-text-post={]}]
			<{{]}} % Add square bracket after column
		}\toprule
				& \multicolumn{5}{c}{\textbf{\^F}} & \multicolumn{5}{c}{\textbf{\^P}}\\\cmidrule(lr){2-6}\cmidrule(lr){7-11}
\textbf{m}\textsubscript{j} 	& \multicolumn{1}{c}{{$\bar{x}\pm\sigma$}} & \multicolumn{1}{c}{$r$} & \multicolumn{1}{c}{$p$} & \multicolumn{2}{c}{\SI{90}{\percent} CI} & {$\bar{x}\pm\sigma$} & \multicolumn{1}{c}{$r$} & \multicolumn{1}{c}{$p$} & \multicolumn{2}{c}{\SI{90}{\percent} CI}\\\midrule
700				& 192,21(2612) & 0,850 & 0,002 & 0,561 & 0,954 & 3768,71(71119)  & 0,854 & 0,002 & 0,571 & 0,956\\
800				& 205,76(3452) & 0,857 & 0,002 & 0,579 & 0,957 & 4030,54(99770)  & 0,890 & <0,001& 0,665 & 0,967\\ 
900				& 267,50(5046) & 0,793 & 0,060 & 0,129 & 0,966 & 4991,84(127641) & 0,866 & 0,026 & 0,352 & 0,978\\\bottomrule
	\end{tabular}
	\end{tablesize}
\end{table}
\end{document}
Vielen Dank nochmal,
der Erdbert

Verfasst: Mi 23. Jan 2019, 17:41
von Bartman
Deine Tabellenüberschrift und die Einstellung für siunitx beziehen sich auf verschiedene Sprachen.

Um die Plusminuszeichen für die Standardabweichung übereinander anzuordnen, könntest Du auch den folgenden Weg einschlagen:
\documentclass[
	titlepage,
	fonzsize=12pt,
	toc=listof,
	toc=bib,
	twoside=false,
	numbers=noenddot,
	parskip=full-,
	captions=tableheading
]{scrbook}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{siunitx}
\usepackage{booktabs}
\usepackage{showframe}

\sisetup{
	locale = DE,
	detect-weight, % Schrifttyp übernehmen (bold, kursiv etc)
	detect-family, %Schriftart des Umgebungstextes übernehmen (mit/ohne Serifen)
	separate-uncertainty=true,
	mode=text
}

\pagenumbering{Roman} %römische Seitenzahlen

\begin{document}
\begin{table}[htbp]
	\centering
	\caption{Fancy Caption}
	\sisetup{table-format = 1.3}
	\scriptsize
	\begin{tabular}{
		l
		S[table-format = 3.2(1)]
		S
		S
		>{{[}} % Add square bracket before column
		S[table-space-text-pre={[}]
		@{;\,} % Add comma and thin-space between the columns
		S[table-space-text-post={]}]
		<{{]}} % Add square bracket after column
		S[table-format = 4.2(5)]
		S
		S[table-format = <1.3]
		>{{[}} % Add square bracket before column
		S[table-space-text-pre={[}]
		@{;\,} % Add comma and thin-space between the columns
		S[table-space-text-post={]}]
		<{{]}}% Add square bracket after column
	}
	\toprule
	& \multicolumn{5}{c}{\textbf{\^F}} & \multicolumn{5}{c}{\textbf{\^P}}\\
	\cmidrule(lr){2-6}\cmidrule(lr){7-11}
	\textbf{m}\textsubscript{j} & 
	{$\quad\bar{x}\pm\sigma$} & {$r$} & {$p$} & 
	\multicolumn{2}{c}{\SI{90}{\percent} CI} & 
	{$\quad\bar{x}\pm\sigma$} & {$r$} & {$p$} & 
	\multicolumn{2}{c}{\SI{90}{\percent} CI}\\
	\midrule
	700 & 192,21(2612) & 0,850 & 0,002 & 0,561 & 0,954 & 3768,71(71119) & 0,854 & 0,002 & 0,571 & 0,956\\
	800 & 205,76(3452) & 0,857 & 0,002 & 0,579 & 0,957 & 4030,54(99770) & 0,890 & <0,001& 0,665 & 0,967\\
	900 & 267,50(5046) & 0,793 & 0,060 & 0,129 & 0,966 & 4991,84(127641) & 0,866 & 0,026 & 0,352 & 0,978\\	
	\bottomrule
	\end{tabular}
\end{table}
\end{document}