PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelle zu lang - Frage zu longtable



fünfhaus
18-01-2014, 16:03
Hallo,

wie könnte man die Tab. (Minimalbsp unten) ordentlich darstellen ? Also auf 2 Seiten platzieren. Ist es eigentlich besser, wenn man Kopf und Fusszeile auf jeder Seite darstellt, oder einfach splitten? Wie würdet Ihr das machen? Was ist angenehmer zu lesen? Ich krieg das mit longtable nicht hin. Minimalbsp.:



\documentclass{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{longtable}
\sisetup{locale=DE, exponent-product={\times}}

\begin{document}
\begin{table}[ht!]
\centering
\begin{longtable}{S[table-format=1.1]S[table-format=1.4]S[table-format=-4.2e-1]S[table-format=3.2e-2]S[table-format=3.6]}
\toprule
{$\alpha$} & {$A_i$} & \multicolumn{3}{c}{eigene Werte}\\
& {$B_i\equiv 0$} & {$Z_r$} &{$C_i$} & {A} \\
\midrule
1,0 & 0.000 & -0.005 & 34.49e-15 & 12.5 \\
& & -1235.67e9 & 3.78e8 & 145.567687 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\bottomrule
\end{longtable}
\caption{Tabellenunterschrift}
\end{table}
\end{document}


Liebe Grüße

fünfhaus

hakaze
18-01-2014, 17:22
Zunächst ist longtable keine Gleitumgebung mehr. Schließlich soll die Tabelle umgebrochen werden und nicht gleiten. Also: table-Umgebung rausschmeißen!
Tabellenkopf und -fuss werden einmalig am Anfang der longtable-Umgebung definiert und mit \endhead bzw. \endfoot abgeschlossen. Diese werden dann für alle Umbrüche der Tabelle genutzt. Außerdem kannst du auch Sonderfälle für den ersten Tabellenkopf und den letzten Tabellenfuss definieren. Schau auch mal in die Anleitung zu longtable (http://texdoc.net/pkg/longtable)! So könnte es dann aussehen (mehrmals kompilieren, bis die Spalten korrekt ausgerichtet sind):

\documentclass[captions=tableabove]{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{longtable}
\sisetup{locale=DE, exponent-product={\times}}

\begin{document}

\begin{longtable}{S[table-format=1.1]S[table-format=1.4]S[table-format=-4.2e-1]S[table-format=3.2e-2]S[table-format=3.6]}
\caption{Tabellenüberschrift}\\
\toprule
{$\alpha$} & {$A_i$} & \multicolumn{3}{c}{eigene Werte}\\
& {$B_i\equiv 0$} & {$Z_r$} &{$C_i$} & {A} \\
\midrule
\endfirsthead
\multicolumn{5}{l}{\dots von vorheriger Seite fortgesetzt}\\
\toprule
{$\alpha$} & {$A_i$} & \multicolumn{3}{c}{eigene Werte}\\
& {$B_i\equiv 0$} & {$Z_r$} &{$C_i$} & {A} \\
\midrule
\endhead
\endfoot
\bottomrule
\endlastfoot
1,0 & 0.000 & -0.005 & 34.49e-15 & 12.5 \\
& & -1235.67e9 & 3.78e8 & 145.567687 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
\midrule
2,0 & 3.0100 & -0.00001 & 123.56e-15 & 12.5 \\
& & -500.67e-9 & 3.78e-8 & 145.5 \\
%\bottomrule
\end{longtable}

\end{document}

fünfhaus
18-01-2014, 23:19
Danke! Eine Frage: Wie kann man eigentlich global die Beschriftung unter die Tabellen setzen? Oder sollte man die Beschriftungen besser dadrüber setzen? Ist das angenehmer beim Lesen...!?

Liebe Grüße

fünfhaus

hakaze
19-01-2014, 09:18
Bei Tabellen (im Gegensatz zu Bildern) kenne ich nur die Empfehlung, die Beschriftung über die Tabelle zu setzen. V.a. bei langen oder mehrseitigen Tabellen will man ja nicht erst bis ans Ende blättern, um die Beschreibung zu finden.

Bei "normalen" Tabellen kannst du einfach den caption-Befehl an den Anfang der table-Umgebung setzen (vor tabular). Damit wird die Beschriftung dann auch vor der eigentlichen Tabelle gesetzt. Einen globalen Umschalter gibt es dafür meines Wissens nicht. Die KOMA-Script-Option captions=tableabove sorgt nur dafür, dass die vertikalen Abstände vor und nach der Beschriftung etwas angepasst werden (siehe auch scrguide.pdf (http://texdoc.net/pkg/scrguide)).

fünfhaus
19-01-2014, 15:13
Ja, das hat mich überzeugt. Ich pack die Beschriftung dadrüber, da ich einige sehr lange Tabellen habe. Danke nochmal :)