Seite 1 von 1

Spaltenüberschrift in Tabellenspalten mit Dezimalausrichtung

Verfasst: Do 14. Dez 2017, 09:26
von Handball_meets_latex
Hallo,

ich habe eine Frage: Ist es möglich die Spaltenüberschrift zu zentrieren, wenn man S-Spalten verwendet, um die Spalten an der Dezimalstelle auszurichten? Bei der Überschrift "Arith. Mittel" passt es, "FQ" geht auch, aber bei "Median" sieht es arg verrutscht aus. Ich habe auch schon versucht die Überschriften rechtsbündig zu machen, aber es zeigt leider keinen Effekt. Ich wäre für jede ordentliche Fassung dankbar ;-). Ich habe in dem Minimalbeispiel einige Zeilen rausgenommen. Normalerweise erstreckt sich die Tabelle über 2 Seiten, aber so ist es erst mal übersichtlicher.

Also schon mal vielen Dank und viele Grüße :-)!
%
\documentclass[a4paper, 12pt, captions=tableabove,oneside,numbers=noenddot]{scrreprt}
\usepackage[T1]{fontenc} %Umlaute etc. werden in Ausgabe wiedergegeben
\usepackage[utf8]{inputenc} %Umlaute können eingegeben werden und plattformübergreifende Kodierung
\usepackage[ngerman]{babel} %Sprache und neue Rechtschreibung, Anpassung an gewünschte Sprache
\usepackage{longtable} % zur Darstellung einer Tabelle über mehrere Seiten
\usepackage{multirow} % für mehrzeilige Zellen
\usepackage{siunitx}
\usepackage{filecontents} % Für lange Tabellen mit fester Gesamtbreite zusammen mit ltxtable
\usepackage{ltxtable} % Für lange Tabellen mit fester Gesamtbreite zusammen mit filecontents
\usepackage{booktabs} % Für horizontale Linien in Tabellen
\usepackage{textcomp}
\usepackage{pdflscape}
\begin{document}
\begin{landscape}
\begin{filecontents}{table-geordnet.auto}
		
		\renewcommand{\arraystretch}{1.5}
		\setlength{\tabcolsep}{5mm}
		\begin{longtable}{p{5.5cm}S[table-format=3.1,table-comparator=true,table-number-alignment=center, output-decimal-marker={,}]S[table-format=3.1,table-comparator=true,table-number-alignment=center, output-decimal-marker={,}]S[table-format=1.2,table-comparator=true,table-number-alignment=center, output-decimal-marker={,}]S[table-format=3.1,table-comparator=true,table-number-alignment=center, output-decimal-marker={,}]S[table-format=3.1,table-comparator=true,table-number-alignment=center, output-decimal-marker={,}]S[table-format=1.2,table-comparator=true,table-number-alignment=center, output-decimal-marker={,}]}
			\caption{Add caption} \label{tab:geordnet}\\
			\toprule
			& \multicolumn{3}{c}{Teilstichprobe 1} & \multicolumn{3}{c}{Teilstichprobe 2}\\
			\cmidrule(lr){2-4} \cmidrule(lr){5-7}
			& \multicolumn{1}{c}{Artih. Mittel} & \multicolumn{1}{r}{Median} & \multicolumn{1}{c}{FQ} & \multicolumn{1}{c}{Arith. Mittel} & \multicolumn{1}{c}{Median} & \multicolumn{1}{c}{FQ}\\
			\endfirsthead \caption{Fortsetzung: Tabelle}
			\\
			\toprule
			& \multicolumn{3}{c}{Teilstichprobe 1} & \multicolumn{3}{c}{Teilstichprobe 2}\\
			& {Arith. Mittel} & {Median} & {FQ} & {Arith. Mittel} & {Median} & {FQ}\\
			\midrule \endhead
			\midrule
			& \multicolumn{6}{c}{\underline{Übergreifende Kategorie 1}}\\
			Variable 1 & 100,0\%&	100,0\%&	0,00 &	100,0\%& 100,0\%&	0,00\\ 			
			Variable 2 & 98,9\%&	100,0\%&	0,01 &	96,7\%&	98,5\%&	0,03\\
			Variable 3 & 88,9\%&	94,5\%&	0,11 &	88,0\%&	88,9\%&	0,12 \\
			
			\bottomrule
		\end{longtable}
	\end{filecontents}
\LTXtable{\linewidth}{table-geordnet.auto}
\end{landscape}

	
\end{document} 

Verfasst: Do 14. Dez 2017, 10:28
von markusv
Hallo!

Weniger ist manchmal mehr:
sage den Spalten mittels table-space-text-post, dass hinter den Zahlen noch etwas steht. Das verbessert automatisch die Anordnung. Da du schon siunitx nutzt, habe ich gleich noch das Prozentzeichen angepasst.
\begin{filecontents}{table-geordnet.auto}
      \renewcommand{\arraystretch}{1.5}
      \setlength{\tabcolsep}{5mm}
      \begin{longtable}{p{5.5cm}*{2}{S[table-format=3.1, output-decimal-marker={,},table-space-text-post ={\,\si{\percent}}]S[table-format=3.1,output-decimal-marker={,},table-space-text-post ={\,\si{\percent}}]S[table-format=1.2,output-decimal-marker={,}]}}
         \caption{Add caption} \label{tab:geordnet}\\
         \toprule
         & \multicolumn{3}{c}{Teilstichprobe 1} & \multicolumn{3}{c}{Teilstichprobe 2}\\
         \cmidrule(lr){2-4} \cmidrule(lr){5-7}
         & {Artih. Mittel} & {Median} & {FQ} & {Arith. Mittel} & {Median} & {FQ}\\
         \endfirsthead \caption{Fortsetzung: Tabelle}
         \\
         \toprule
         & \multicolumn{3}{c}{Teilstichprobe 1} & \multicolumn{3}{c}{Teilstichprobe 2}\\
         & {Arith. Mittel} & {Median} & {FQ} & {Arith. Mittel} & {Median} & {FQ}\\
         \midrule \endhead
         \midrule
         & \multicolumn{6}{c}{\bfseries Übergreifende Kategorie 1}\\
         Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
         Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
         Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
         \bottomrule
      \end{longtable}
\end{filecontents}
\documentclass[a4paper, 12pt, captions=tableabove,oneside,numbers=noenddot]{scrreprt}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage[ngerman]{babel} 
%\usepackage{longtable} %bereits geladen
\usepackage{siunitx}
\usepackage{ltxtable}
\usepackage{booktabs}
\usepackage{pdflscape}
\begin{document}
\begin{landscape}
\LTXtable{\linewidth}{table-geordnet.auto}
\end{landscape}
\end{document}

Verfasst: Do 14. Dez 2017, 10:56
von Handball_meets_latex
Hallo,

vielen Dank für deine schnelle Hilfe. So sieht es gut aus :-). Danke!!!

Verfasst: Do 14. Dez 2017, 17:47
von Bartman
Die Grundlage meiner Änderungen ist das Beispiel von markusv.

Meine Gestaltung der Spaltentypen zeigt lediglich eine Alternative.

Für die zweite bis letzte Seite fehlt der Aufruf von \cmidrule.

Falls Du ein Tabellenverzeichnis benutzt, sollte dieses nur einen Eintrag für die Tabelle enthalten.
\begin{filecontents}{table-geordnet.auto}
\renewcommand{\arraystretch}{1.5}
\setlength{\tabcolsep}{5mm}
\begin{longtable}{
	X
	*{2}{
		*{2}{
			S[table-format=3.1, table-space-text-post=\,\si{\percent}]
		}
		S[table-format=1.2]
	}
}
\caption{Add caption}
\label{tab:geordnet}\\
\toprule
& \multicolumn{3}{c}{Teilstichprobe 1} & \multicolumn{3}{c}{Teilstichprobe 2}\\
\cmidrule(lr){2-4} \cmidrule(lr){5-7}
& {Artih. Mittel} & {Median} & {FQ} & {Arith. Mittel} & {Median} & {FQ}\\
\endfirsthead 
\caption[]{Fortsetzung: Tabelle}\\% <- [] für Tabellenverzeichnis eingefügt
\toprule
& \multicolumn{3}{c}{Teilstichprobe 1} & \multicolumn{3}{c}{Teilstichprobe 2}\\
\cmidrule(lr){2-4} \cmidrule(lr){5-7}% <- eingefügt
& {Arith. Mittel} & {Median} & {FQ} & {Arith. Mittel} & {Median} & {FQ}\\
\midrule 
\endhead
\midrule
& \multicolumn{6}{c}{\bfseries Übergreifende Kategorie 1}\\
Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
Variable 1 & 100,0\,\si{\percent}&   100,0\,\si{\percent}&   0,00 &   100,0\,\si{\percent}& 100,0\,\si{\percent}&   0,00\\          
Variable 2 & 98,9\,\si{\percent}&   100,0\,\si{\percent}&   0,01 &   96,7\,\si{\percent}&   98,5\,\si{\percent}&   0,03\\
Variable 3 & 88,9\,\si{\percent}&   94,5\,\si{\percent}&   0,11 &   88,0\,\si{\percent}&   88,9\,\si{\percent}&   0,12 \\      
\bottomrule
\end{longtable}
\end{filecontents}

\documentclass[fontsize=12pt, captions=tableabove, numbers=noenddot, listof=totoc]{scrreprt}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage{lmodern}% <- eingefügt
\usepackage[ngerman]{babel} 
\usepackage[locale=DE]{siunitx}% <- geändert
\usepackage{ltxtable}
\usepackage{booktabs}
\usepackage{pdflscape}
\usepackage{scrhack}% für showframe im Querformat
\usepackage{showframe}

\begin{document}
\tableofcontents
\listoftables

\begin{landscape}
\LTXtable{\linewidth}{table-geordnet.auto}
\end{landscape}
\end{document}
Wenn das Prozentzeichen nicht in den Datenzellen stehen muss, darf es in die Spaltenbeschriftung verschoben werden.
\begin{filecontents}{table-geordnet.auto}
\renewcommand{\arraystretch}{1.5}
\setlength{\tabcolsep}{5mm}
\begin{longtable}{
   X% Ersatz für p{5.5cm}
   *{2}{
      *{2}{
         S[table-format=3.1]
      }
      S[table-format=1.2]
   }
}
\caption{Add caption}
\label{tab:geordnet}\\
\toprule
& \multicolumn{3}{c}{Teilstichprobe 1}   & \multicolumn{3}{c}{Teilstichprobe 2}\\
\cmidrule(lr){2-4} \cmidrule(lr){5-7}
& {Arith. Mittel} & {Median}      & {FQ} & {Arith. Mittel} & {Median}      & {FQ} \\
& \si{\percent}   & \si{\percent} &      & \si{\percent}   & \si{\percent} &      \\
\endfirsthead 
\caption[]{Fortsetzung: Tabelle}\\% <- [] für Tabellenverzeichnis eingefügt
\toprule
& \multicolumn{3}{c}{Teilstichprobe 1}   & \multicolumn{3}{c}{Teilstichprobe 2}   \\
\cmidrule(lr){2-4} \cmidrule(lr){5-7}% <- eingefügt
& {Arith. Mittel} & {Median}      & {FQ} & {Arith. Mittel} & {Median}      & {FQ} \\
& \si{\percent}   & \si{\percent} &      & \si{\percent}   & \si{\percent} &      \\
\midrule 
\endhead
\midrule
& \multicolumn{6}{c}{\bfseries Übergreifende Kategorie 1}\\
Variable 1 &  100,0 &  100,0 &  0,00 &  100,0 &  100,0 &  0,00 \\          
Variable 2 &   98,9 &  100,0 &  0,01 &   96,7 &   98,5 &  0,03 \\
Variable 3 &   88,9 &   94,5 &  0,11 &   88,0 &   88,9 &  0,12 \\      
Variable 1 &  100,0 &  100,0 &  0,00 &  100,0 &  100,0 &  0,00 \\          
Variable 2 &   98,9 &  100,0 &  0,01 &   96,7 &   98,5 &  0,03 \\
Variable 3 &   88,9 &   94,5 &  0,11 &   88,0 &   88,9 &  0,12 \\      
Variable 1 &  100,0 &  100,0 &  0,00 &  100,0 &  100,0 &  0,00 \\          
Variable 2 &   98,9 &  100,0 &  0,01 &   96,7 &   98,5 &  0,03 \\
Variable 3 &   88,9 &   94,5 &  0,11 &   88,0 &   88,9 &  0,12 \\      
Variable 1 &  100,0 &  100,0 &  0,00 &  100,0 &  100,0 &  0,00 \\          
Variable 2 &   98,9 &  100,0 &  0,01 &   96,7 &   98,5 &  0,03 \\
Variable 3 &   88,9 &   94,5 &  0,11 &   88,0 &   88,9 &  0,12 \\      
Variable 1 &  100,0 &  100,0 &  0,00 &  100,0 &  100,0 &  0,00 \\          
Variable 2 &   98,9 &  100,0 &  0,01 &   96,7 &   98,5 &  0,03 \\
Variable 3 &   88,9 &   94,5 &  0,11 &   88,0 &   88,9 &  0,12 \\      
Variable 1 &  100,0 &  100,0 &  0,00 &  100,0 &  100,0 &  0,00 \\          
Variable 2 &   98,9 &  100,0 &  0,01 &   96,7 &   98,5 &  0,03 \\
Variable 3 &   88,9 &   94,5 &  0,11 &   88,0 &   88,9 &  0,12 \\      
\bottomrule
\end{longtable}
\end{filecontents}

\documentclass[fontsize=12pt, captions=tableabove, numbers=noenddot, listof=totoc]{scrreprt}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage{lmodern}% <- eingefügt
\usepackage[ngerman]{babel} 
\usepackage[locale=DE]{siunitx}% <- geändert
\usepackage{ltxtable}
\usepackage{booktabs}
\usepackage{pdflscape}
\usepackage{scrhack}% für showframe im Querformat
\usepackage{showframe}

\begin{document}
\tableofcontents
\listoftables

\begin{landscape}
\LTXtable{\linewidth}{table-geordnet.auto}
\end{landscape}
\end{document}