Spaltenbreit und Tabellenköpfe mit siunitx

Tabellen und Grafiken erstellen und anordnen


Erdbert
Forum-Newbie
Forum-Newbie
Beiträge: 7
Registriert: Di 22. Jan 2019, 15:11

Spaltenbreit und Tabellenköpfe mit siunitx

Beitrag 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

Code: Alles auswählen

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

Dateianhänge
test.pdf
(65.16 KiB) 128-mal heruntergeladen

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2142
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag 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.

Erdbert
Forum-Newbie
Forum-Newbie
Beiträge: 7
Registriert: Di 22. Jan 2019, 15:11

Beitrag 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.

Code: Alles auswählen

%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

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2142
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag 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:

Code: Alles auswählen

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

Antworten