PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellennummerierung nach ContinuedFloat stimmt nicht



René Geppert
15-12-2008, 22:59
\documentclass[11pt,a4paper,oneside]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{blindtext}

\usepackage{subfig}

\usepackage{booktabs}

\begin{document}

\begin{table}\captionabove{foo}
\ContinuedFloat
\begin{tabular}{p{\linewidth}}
\toprule
\subfloat[1] \medskip \\
\blindtext \\
\subfloat[2] \medskip\\
\blindtext \\
\end{tabular}
\vspace{\intextsep}
\begin{flushright}\emph{(continued on next page)}\end{flushright}
\end{table}

\begin{table}\captionabove{bar \emph{(contd.)}}
\ContinuedFloat
\begin{tabular}{p{\linewidth}}
\toprule
\subfloat[3] \medskip \\
\blindtext \\
\subfloat[4] \medskip \\
\blindtext \\
\end{tabular}
\end{table}

\begin{table}\captionabove{baz}
\begin{tabular}{p{\linewidth}}
\blindtext
\end{tabular}
\end{table}

\end{document}

die tabelle nach ContinuedFloat trägt die gleiche nummerierung?

(oben muss ich allerdings bei beiden ContinuedFloat setzen, sonst wird zB die nummerierung der subfloat forgesetzt, aber nicht die der tables...das doppelte continuedfloat macht dann scheinbar der darauffolgenden table zu schaffen)

gruß^^

mechanicus
15-12-2008, 23:15
Hallo,

warum nimmst du nicht ne supertabular oder longtable?

Gruß
Marco

René Geppert
16-12-2008, 00:09
longtable war auch mein erster gedanke
problem dabei sind die subfigures - diese erfordern eine gleitumgebung, so dass ich die longtable zusätzlich nochmal in eine table einpacken muss
dann allerdings ist longtable nicht mehr in der lage die subfigures umzubrechen

jedenfalls deckt sich das mit sommerfees aussage hier: http://www.mrunix.de/forums/showthread.php?t=61475

zudem erzeugt longtable neben table eine weitere tabellennummerierung, so dass die darauffolgende tabelle eine nummer überspringt (das wäre bei supertabular evtl. nicht ein problem)

oder wolltest du auf etwas anderes hinaus?


\documentclass[11pt,a4paper,oneside]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{blindtext}

\usepackage{caption}
\usepackage{subfig}
\usepackage{longtable}

\usepackage{booktabs}

\begin{document}

\begin{table}\captionabove{foo}
\begin{longtable}{p{\linewidth}}
\toprule
\subfloat[1] \medskip \\
\blindtext \\
\subfloat[2] \medskip\\
\blindtext \\
\subfloat[3] \medskip \\
\blindtext \\
\subfloat[4] \medskip \\
\blindtext \\
\subfloat[5] \medskip \\
\blindtext \\
\end{longtable}
\end{table}

\begin{table}\captionabove{baz}
\begin{tabular}{p{\linewidth}}
\blindtext
\end{tabular}
\end{table}

\end{document}

mechanicus
16-12-2008, 01:09
Hallo,

habe jetzt auch alle Möglichkeiten durch. Habe supertabular, ltablex usw probiert. Bin zu der Erkenntnis gekommen, dass es wohl manuell geteilt werden muss :mad: .
In Anbetracht der Zeit, werde ich nachher ;) nochmal vorbei schauen. Muss jetzt arbeiten.

Gruß
Marco

Donalduck
16-12-2008, 01:28
Öha, du hast wohl Nachtschicht? Wobei das bei der Jahreszeit kaum einen Unterschied macht -.-

René Geppert
16-12-2008, 01:51
brich dir keinen ab für den mist mechanicus :P

ich habs jetzt sehr sehr dirty gemacht
insbesondere das mit dem setcounter ist natürlich unschön
und auch die unterschiedlichen abstände innerhalb der beiden tables trotz identischer subfloats sind mir schleierhaft
aber immerhin machen die dinger erstmal, was sie sollen^^ (substance over form^^)


\documentclass[11pt,a4paper,oneside]{scrreprt}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{blindtext}

\usepackage{caption}
\usepackage{subfig}
\renewcommand{\thesubtable}{Subtable~\arabic{subta ble}}
\captionsetup[subtable]{labelformat=simple,listofformat=subsimple,singlel inecheck=false,font=normal}

\renewcommand{\thetable}{\arabic{table}}

\makeatletter
\renewcommand{\l@subtable}{\@dottedtocline{2}{5em} {5em}}
\makeatother

\usepackage{booktabs}

\usepackage{hyperref}

\begin{document}

\listoftables

\begin{table}\captionabove{foo}\label{abc}
\ContinuedFloat
\begin{tabular}{p{\linewidth}}
\toprule
\subfloat[\mbox{FIRST} \label{1}]{} \\
\blindtext \\
\subfloat[\mbox{SECOND} \label{2}]{} \\
\blindtext \\
\end{tabular}
\vspace{\intextsep}
\begin{flushright}\emph{(continued on next page)}\end{flushright}
\end{table}
\begin{table}
\ContinuedFloat
\centering \autoref{abc}: foo \vspace{\intextsep} \emph{(contd.)}
\begin{tabular}{p{\linewidth}}
\toprule
\subfloat[\mbox{THIRD} \label{3}]{} \\
\blindtext \\
\subfloat[\mbox{FOURTH} \label{4}]{} \\
\blindtext \\
\end{tabular}
\end{table}

\setcounter{table}{1}

\begin{table}\captionabove{baz}
\begin{tabular}{p{\linewidth}}
\blindtext
\end{tabular}
\end{table}

\newpage

TEXT

\end{document}

sicher aus TeXnischer sicht ein graus...aber ich bin erstmal stolz auf mich :p

hypcap meckert zwar wegen undefinierter caption, aber damit kann ich leben :D

sommerfee
16-12-2008, 09:36
Moin René,

Folgendes ist mir aufgefallen:

1. In die erste "table"-Umgebung gehört kein \ContinuedFloat, sondern immer nur in die folgenden.

2. Beim Einsatz von \ContinuedFloat ist die Reihenfolge falsch. Wie soll \ContinuedFloat denn für die richtige Nummerierung sorgen können, wenn du es erst nach \caption(above) angibst?




\begin{table}\captionabove{foo}\label{abc}
\ContinuedFloat


Es muß also stattdessen


\begin{table}
\ContinuedFloat
\captionabove{foo}\label{abc}


heißen.

3.

hypcap meckert zwar wegen undefinierter caption, aber damit kann ich leben :D

Wenn dein caption-Paket die Versionsnummer 3.1 hat, kannst du das Einbinden des hypcap-Paketes auch einfach unterlassen. (Siehe auch Abschnitt über "hypcap" in der caption-Dokumentation.)

Liebe Grüße,
Axel

René Geppert
16-12-2008, 10:00
yes, ich habs!

sommerfree: das problem dabei war, dass nur das weglassen der caption dafür sorgte, dass mein inhaltsverzeichnis NICHT wie folgt aussah:
1 - TABELLE
...subfigure a
...subfigure b
1 - TABELLE (contd.)
...subfigure c
...subfigure d

ausgeschlafen jetzt nochmal bisschen gelesen und unterdrücke den eintrag jetzt per leerem argument

\captionabove[]{foo (contd.)}

das löst im grunde alle probleme auf einen schlag...zusammen mit dem ContinuedFloat
- beide tabellen tragen dieselbe nummer
- die subfloats sind fortlaufend nummeriert und tauchen allesamt, ohne die continued-caption, im tabellenverzeichnis auf
- fehlermeldung weg

quasi so:
1 - TABELLE
...subfigure a
...subfigure b
...subfigure c
...subfigure d

:D

Vielen dank für den Denkanstoß^^