PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 2 Fragen zu Tabellen: Doppeleintrag und Position in Fließtext



demian
03-01-2008, 17:12
Hallo liebes Forum,

ich bräuchte mal wieder Eure Hilfe: Im Anhang findet ihr ein nicht so minimales Minimalbeispiel (sorry, wüsste nicht, wo ich noch groß kürzen sollte), an dem ich zwei Dinge ändern möchte.

1. Ich verwende eine Tabelle über 2 Seiten. Jetzt bekomme ich zwei Einträge ins Tabellenverzeichnis. Ist das so erwünscht? Mir kommts spanisch vor, ich hätte zumindest gerne einen Zusatz, dass es sich beim zweiten Eintrag um eine Fortsetzung handelt.

2. Ich hätte immer gedacht, LaTex setzt die Tabelle automatisch an eine passende Stelle. Jedoch, setzt es in diesem Fall die Tabelle genau dort, wo ich den Code habe, obwohl auf die erste Textseite ohne Probleme noch ein Absatz passen würde. Warum?

Ich hoffe, dass ist im Zusammenhang mit dem Code halbswegs verständlich. Vielen Dank und Grüße!

Christoph

demian
03-01-2008, 20:31
Kleine Anmerkung: Wegen den oben geschilderten Problem mit den Doppeleinträgen bekomme ich wohl auch die Fehlermeldung "Labes multiply defined."

bobmalaria
03-01-2008, 21:23
uhhh, ganz grausam wie da mit pagebreak gearbeitet wird. das wird wohl auch der grund für nen bescheidenen satzspiegel sein. führ dier mal die longtable anleitung zu gemüte. da steht drin wie du alles machen kannst was du willst. u.a. mit der anmerkung 'fortsetzung' bei tabellen über mehrere seiten.

gruß

localghost
03-01-2008, 21:29
Eine ebenso große Grausamkeit ist die Verwendung des Schalters \bf. Der kommt noch aus der Zeit von LaTeX2.09 und sollte dringend durch \textbf{…} als lokale Umschaltung ersetzt werden.

demian
04-01-2008, 09:10
Danke euch, werde ich gleich mal machen. Wobei ich diesen pagebreak-Befehl aus der longtable-Anleitung hatte, die übrigens in Sachen Lesbarkeit sicher nicht den Heinrich-Heine-Preis 2008 gewinnen wird.

demian
04-01-2008, 09:33
Und zu dem \bf: Das hat mir der Excel2Latex-Konverter so gemacht, der leider auch nicht mehr der jüngste ist. Haber aber die aktuellste Version. Zumindest finde ich keine neuere. Und auf das Ding möchte ich ungern verzichten, von daher werde ich es wohl in Zukunft mit Hand ausbessern müssen.

demian
04-01-2008, 10:54
Also sorry, aber mir hilft dieses Longtable-Paket wirklich nicht weiter. Finde zwar folgenden Absatz auf Seite 5:

You may wish the caption on later pages to be different to that on the first page.
In this case put the \caption command in the first heading, and put a subsidiary
caption in a \caption[] command in the main heading. If the optional argument
to \caption is empty, no entry is made in the list of tables. Alternatively, if
you do not want the table number to be printed each time, use the \caption*
command.

Leider ist vorher nicht genau definiert, was first heading und main heading sind. Daher würsste ich nicht, wo ich es einfügen sollte. Habe dann bei meinem Beispiel einfach rumprobiert, aber sobald ich irgendwo unter meinen \endhead Befehl irgendeinen caption-Befehl einbaue, macht er mir die Caption unter meinen Kopf in die Tabelle ==> Sehr häßlich. Und ansonsten bin ich mit meiner Tabelle wirklich zufrieden. Sie macht genau das, was sie soll, und sieht zumindest aus meiner Sicht top aus.

rais
04-01-2008, 11:47
Moin moin,


Leider ist vorher nicht genau definiert, was first heading und main heading sind.
damit ist vermutlich


\begin{longtable}{..}
was hier steht, landet im Kopf der ersten Seite der longtable
\endfirsthead
was hier steht, landet oben auf allen Folgeseiten
\endhead
...
gemeint.
MfG,

demian
04-01-2008, 18:42
Ok, in meinem Fall gibt es ja aber nur einen \endhead. Ich habe eine Tabelle über zwei Seiten, die Überschrift soll auf beiden gleich sein (deswegen hab ich \endhead gemacht) und das einzige, was ich will, ist, dass die Tabelle nicht zweimal im Inhaltsverzeichnis steht. Das bekomme ich aber nicht hin. Ein zusätzliches caption, wie es im longtable-Paket steht, in dem ich die eckigen Klammern freilasse, damit es NICHT im Inhaltsverzeichnis erscheint, weiß ich folglich nicht wo ich setzen soll. Weiß jemand Rat?

rais
04-01-2008, 19:02
Moin Christoph,

Ok, in meinem Fall gibt es ja aber nur einen \endhead. Ich habe eine Tabelle über zwei Seiten, die Überschrift soll auf beiden gleich sein (deswegen hab ich \endhead gemacht) und das einzige, was ich will, ist, dass die Tabelle nicht zweimal im Inhaltsverzeichnis steht. Das bekomme ich aber nicht hin. Ein zusätzliches caption, wie es im longtable-Paket steht, in dem ich die eckigen Klammern freilasse, damit es NICHT im Inhaltsverzeichnis erscheint, weiß ich folglich nicht wo ich setzen soll. Weiß jemand Rat?
Du brauchst doch nur den Inhalt zwischen \begin{longtable}{..} und \endhead zu kopieren (ohne den \label), unter \endhead zu setzen, den zweiten \caption mit dieser Klammer zu versehen und den ersten \endhead in \endfirsthead umzutaufen -- etwa so:


\begin{longtable}{lrrrrrrrrrrr}
\caption{Descriptive Statistics}\label{DescrS}\\
\toprule
& \multicolumn{ 3}{c}{\bfseries All Trades} & & \multicolumn{ 3}{c}{\bfseries Purchases} & & \multicolumn{ 3}{c}{\bfseries Sales} \\

& Mean & Median & Std. Dev. & &Mean & Median & Std. Dev. && Mean & Median & Std. Dev. \\
\midrule
\endfirsthead
\caption[]{Descriptive Statistics (cont'd)}\\
\toprule
& \multicolumn{ 3}{c}{\bfseries All Trades} & & \multicolumn{ 3}{c}{\bfseries Purchases} & & \multicolumn{ 3}{c}{\bfseries Sales} \\

& Mean & Median & Std. Dev. & &Mean & Median & Std. Dev. && Mean & Median & Std. Dev. \\
\midrule
\endhead

-- den (cont'd) kannst Du natürlich weglassen, wenn's gleich sein soll.;)
MfG,

demian
04-01-2008, 20:44
Vielen Dank Rainer, das wars. Problem gelöst ;-) Jetzt bleibt nur noch das Problemchen mit der Gleitumgebung, aber im Notfall kopier ich zum Schluss die Tabellen einfach per Hand an die richtige Stelle.

Grüße

Christoph

rais
05-01-2008, 22:43
Moin Christoph,
afair (hier: hab' mir die Doku zu longtable diesbezüglich nicht nochmal angeschaut) ist die longtable-Umgebung _keine_ Gleitumgebung, schließlich soll eine Gleitumgebung noch auf eine Seite passen, was bei einer longtable-Umgebung nicht unbedingt gegeben ist...

MfG,

demian
06-01-2008, 16:40
Ja, das macht Sinn. Vielen Dank dir.