Mit subfig zusammengesetzte Abbildungen mehrseitig splitten?

Tabellen und Grafiken erstellen und anordnen


Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Mit subfig zusammengesetzte Abbildungen mehrseitig splitten?

Beitrag von Rolando »

Hallo zusammen,

ich habe Abbildungen die teilweise aus 8 Einzelbildern bestehen, die ich mit subfig zusammensetze.

Dabei werden die Abbildungen leider zu groß, um sie auf einer Seite lesbar unterzubringen.

Nun suche ich nach einer brauchbaren Lösung.

Am einfachsten wäre es wohl die Abbildung in zwei mit jeweils 4 Einzelbildern zu splitten und dann z.B. Abb. 1 und Abb. 1f. oder sowas zu schreiben um auszudrücken, dass diese beiden Abbildungen zusammengehören.

Welche Möglichkeiten habe ich dort sowas zu realisieren?

So sieht eine normale Abbildung bei mir aus:
\usepackage{subfig} 		
\usepackage{graphicx}		

\begin{figure}[!htbp]
\centering
\captionsetup[subfloat]{nearskip=3pt}
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m1}\label{zf1}}
\qquad
\subfloat[bla ]
{\includegraphics[width=0.45\textwidth]{m2}\label{zf2}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m3}\label{zf3}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m4}\label{zf4}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m5}\label{zf5}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m6}\label{zf6}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m7}\label{zf7}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m8}\label{zf8}}
\caption{Blub}\label{bla}
\end{figure}
Vielen Dank :-)

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Dafür gibt es den Befehl \ContinuedFloat.
\documentclass{article}
\usepackage{subfig}
\usepackage[demo]{graphicx}
\begin{document}

\begin{figure}[!htbp]
\centering
\captionsetup[subfloat]{nearskip=3pt}
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m1}\label{zf1}}
\qquad
\subfloat[bla ]
{\includegraphics[width=0.45\textwidth]{m2}\label{zf2}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m3}\label{zf3}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m4}\label{zf4}}
\caption{Blub}\label{bla}
\end{figure}
\begin{figure}
\ContinuedFloat
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m5}\label{zf5}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m6}\label{zf6}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m7}\label{zf7}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{m8}\label{zf8}}
\caption{Blub}\label{bla}
\end{figure}
\end{document}
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Beitrag von Rolando »

Vielen Dank, leider funktioniert es nur so halb :?

Ich habe z.B. eine normale Abbildung als erstes.
Diese bekommt den Namen Abb. 1, was auch korrekt ist.

Nun kommt eine gesplittete mit den Namen Abb. 2 gefolgt von Abb. 1 und die nächste normale Abbildung heißt dann wieder Abb. 2.

Wie schaffe ich es, dass die Bilder trotz \ContinuedFloat richtige Laufnummern bekommen?

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Funktioniert in meinem Testdokument ohne Probleme. Der Fehler liegt also irgendwo in deinem Code und den sehe ich nicht. Erstelle uns bitte ein vollständiges Minimalbeispiel damit wir die Ursache identifizieren und Lösungen finden können.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Beitrag von Rolando »

Vielen Dank :-)
\documentclass[a4paper,11pt,DIV=calc, titlepage]{scrartcl}

\usepackage{subfig} 		
\usepackage[demo]{graphicx}	


\begin{document}

\begin{figure}[!htbp]
\centering
\captionsetup[subfloat]{nearskip=3pt}
\subfloat[bla]
{\includegraphics[width=0.47\textwidth]{bla}\label{z1}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.47\textwidth]{bla}\label{z2}}
\caption{Erste Abbildung}\label{bla}
\end{figure}


\begin{figure}[!htbp]
\centering
\captionsetup[subfloat]{nearskip=3pt}
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{zf3}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{zf4}}
\caption{Zweite Abbildung, Teil 1}\label{bla}
\end{figure}
\begin{figure}[!htbp]
\ContinuedFloat 
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{zf7}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{zf8}}
\caption{Zweite Abbildung, Teil 2}\label{bla}
\end{figure}


\begin{figure}[!htbp]
\centering
\captionsetup[subfloat]{nearskip=3pt}
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{e0}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{e1}}
\caption{Dritte Abbildung}\label{ecke}
\end{figure}


\begin{figure}[!htbp]
\centering
\captionsetup[subfloat]{nearskip=3pt}
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{e4}}
\qquad
\subfloat[bla]
{\includegraphics[width=0.45\textwidth]{bla}\label{e5}}
\caption{Vierte Abbildung}\label{ecke}
\end{figure}


\end{document} 

Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Beitrag von Rolando »

Ich habe die Lösung gefunden!
Danke nochmal für die Bemühungen :-)

Man muss anstatt des subfig Paketes das subcaption Paket nutzen und dann funktioniert es einwandfrei:
\begin{figure}[!htbp]
\centering
\subcaptionbox{test}
{\includegraphics[width=0.45\textwidth]{bla}\label{zf3}}
\qquad
\subcaptionbox{test}
{\includegraphics[width=0.45\textwidth]{bla}\label{zf4}}
\caption{Zweite Abbildung, Teil 1}\label{bla}
%\phantomcaption
\end{figure}
\newpage
\begin{figure}[!htbp]
\ContinuedFloat 
\centering
\subcaptionbox{test}
{\includegraphics[width=0.45\textwidth]{bla}\label{zf7}}
\qquad
\subcaptionbox{test}
{\includegraphics[width=0.45\textwidth]{bla}\label{zf8}}
\caption{Zweite Abbildung, Teil 2}\label{bla}
\end{figure}

Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Beitrag von Rolando »

Ich habe da leider doch noch ein Problem :?

Wenn ich den folgenden Code nutze, sind die Abstände der letzten beiden Bilder nicht korrekt. Sowohl vertikal als auch horizontal stimmen sie leider nicht und ich habe keine Ahnung, woran es liegen kann und wie ich es schaffe, dass alles symmetrisch wird :(

So sieht das bei mir aus:
Bild


Vielen Dank für die Hilfe :-)
\documentclass{article}
\usepackage{subcaption}
\usepackage[demo]{graphicx}
\begin{document}

\begin{figure}[!htbp]
\centering
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\qquad
\subcaptionbox{Abstand\label{bla}}
{\includegraphics[width=0.451\textwidth]{bla}}
\vspace{3mm}
\caption{hallo}\label{bla}
\end{figure}

\end{document}

P.S.: Ich konnte die Grafik hier im Forum nicht direkt hochladen. Da gibt es immer eine Fehlermeldung.

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Dateiuploads sind hier schon lange defekt.

Versuch es mal mit einer Leerzeile vor dem vspace.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Beitrag von Rolando »

Danke, eine Leerzeile vor dem vspace und selbst das Weglassen von vspace ändert leider nichts.

Edit:
Ich habe gerade nochmal genau hingesehen.
Der horizontale Versatz ist bei jeder Abbildung, die so aufgebaut ist, vorhanden. Die Anzahl der Bilder spielt keine Rolle. Immer die untersten beiden Bilder haben einen Versatz.

Rolando
Forum-Anfänger
Forum-Anfänger
Beiträge: 15
Registriert: Do 2. Jun 2011, 13:58

Beitrag von Rolando »

Ok, ich habe vergessen in dem Beispiel die Abbildungsunterschriften von meinem Original zu übernehmen.
Ich dachte die Unterschriften ansich würden nichts ausmachen.

Doch genau an diesen lag es!

Es scheint eine kritische Länge zu geben. Die oberen vier waren jeweils ein Zeichen länger als die der unteren vier Unterschriften.

Dadurch wurde zwar die Unterschrift ansich noch nicht umgebrochen, aber intern scheint eine kritische Länge erreicht worden zu sein, die zu einem leeren Umbruch führt.

Als Lösung habe ich nun die oberen Unterschriften gekürzt, oder man kann die unteren mit einer Tilde am Ende um ein unsichtbares Zeichen verlängern.

Und ein \par vor dem vspace hilft gegen den horizontalen Versatz.


@Johannes_B: Danke für die Hilfe und sorry für den Crosspost ;-)

Antworten