Mein Dokument enthält sehr viele Abbildungen und Tabellen. Ab einer gewissen Anzahl funktionierte das Übersetzen nicht mehr, LaTeX gab stattdessen aus:

Open in writeLaTeX
! LaTeX Error: Too many unprocessed floats.

See the LaTeX manual or LaTeX Companion for explanation.

an einer Zeile mit \begin{figure} oder \begin{table}.

Wie kann ich damit umgehen? Ist das eine Frage des Platzierens, wo ich was beachten muss? Hilft evtl. ein Paket weiter?

gefragt 25 Jan '14, 09:35

Student's gravatar image

Student
4702578103
Akzeptiert: 96%

Die Frage ist zum Archivieren gedacht, kein Support benötigt. Antworten sind jedoch sehr willkommen! Ich lasse die Frage offen stehen, falls jemand eine gute Lösung kennt oder Tipps hat. Falls keine Antwort kommt, ergänze ich eine.

(25 Jan '14, 09:43) Student

Der LaTeX Begleiter schreibt zu dieser Fehlermeldung:

Too many unprocessed floats

Floats that cannot be placed immediately are deferred by LaTeX, possibly causing subsequent floats to be deferred as well. LaTeX can defer up to 18 floats, then you will receive this error message. Using the package morefloats will increase this limit to 36 but if there is a float that cannot be placed for some reason this change will merely delay receiving the above error. See Chapter 6 for ways to deal with this situation.

This error can also be triggered if you have too many \marginpar commands within a single paragraph. A \marginpar temporarily uses two storage bins for deferred floats as long as the current paragraph has not been typeset (this allows a maximum of nine marginal notes per paragraph, or fewer if there are already some deferred floats).

Übersetzt ins Deutsche:

Gleitumgebungen, die nicht sofort platziert werden können können, werden von LaTeX zurückgehalten, was dazu führt, dass mögliche folgende Gleitumgebungen ebenfalls zurückgehalten werden. LaTeX kann bis zu 18 Gleitumgebungen zurückhalten, dann erhält man diesen Fehler. Das Paket morefloats erhöht die Zahl auf 36, aber wenn es eine Gleitumgebung gibt, die aus irgendeinem Grund nicht platziert werden kann., wird diese Änderung den Fehler lediglich herauszögern.

Der Fehler kann ebenso durch zu viele \marginpar-Befehle in einem Absatz verursacht werden. Ein \marginpar belegt vorübergehend zwei Plätze für zurückgehaltene Gleitumgebungen während der aktuelle Absatz noch nicht gesetzt wurde. (Das erlaubt maximal 9 Randnotizen pro Absatz, oder weniger, wenn es schon zurückgehaltene Gleitumgebungen gibt.)

Wahrscheinliche Ursachen sind also zum Beispiel, wenn man etwa Gleitobjekten nicht erlaubt, auf einer Gleitseite platziert zu werden, und man zu viele davon hat, bevor das nächste \clearpage (z.B. durch ein \chapter) aufgerufen wird.

Statt dem Verweis auf Kapitel 6 des Begleiters verweise ich stattdessen auf die Frage und ihre Antwort

Dort wird der Gleitobjekt-Algorithmus detailliert beschrieben, wodurch hoffentlich einige Hinweise geliefert werden, wieso es zu nicht ausgegebenen Gleitobjekten kommen kann.

Grundsätzlich bleiben also folgende Lösungsstrategien1:

  1. Die Positionierung der Gleitumgebungen prüfen und verbessern, z.B. durch mehr Platzierungsoptionen bis hin zu \begin{figure}[!htbp] oder \begin{table}[!htbp] oder auch durch weglassen des optionalen Arguments. Oft hat man vielleicht zu restriktive Parameter wie etwa [ht].
  2. Vielleicht kann man den Text umformulieren, noch ein paar Sätze einfügen und/oder versuchen, die Gleitumgebungen nicht zu dicht aufeinander folgen zu lassen.
  3. Das Paket morefloats laden.
  4. Wenn alle Stricke reißen durch \cleardoublepage oder \clearpage die Ausgabe der aufgelaufenen Floats erzwingen. (Vielleicht mit dem afterpage Paket und der Anweisung \afterpage{\clearpage}, damit keine unschönen Löcher im Textfluß entstehen.
  5. Wenn es an den \marginpars liegt aus dem betreffenden Absatz vielleicht zwei machen.

  1. Dank an @Student für die Anregung zu dieser Zusammenfassung. Dank auch an @Herbert für die Verbesserung der Liste.
Permanenter link

beantwortet 25 Jan '14, 10:59

Clemens's gravatar image

Clemens
19.0k113060

bearbeitet 26 Jan '14, 11:08

zu "Klug und aufwändig": Mach mal 19 \figure-Umgebungen hintereinander und versuche den Fehler zu umgehen.

(26 Jan '14, 06:58) Herbert

@Herbert Klar, es kann natürlich Dokumente geben, bei denen man wirklich morefloats braucht. Aber wenn man wirklich 19 Floats in der Warteschlange liegt, liegt der Verdacht schon nahe, dass man zu restriktiv war... wenn das anpassen nicht klappt, kann man ja immer noch morefloats laden.

(26 Jan '14, 07:57) Clemens

Es geht mir nur um deine Aufzählung, da du ja sagst, dass man das Problem durch Fall 1 "Klug und aufwändig" beseitigen könnte, indem man an den Platzierungsparametern spielt.

(26 Jan '14, 08:04) Herbert

@Herbert Ach so. Das hab ich wörtlich von einem inzwischen gelöschten Kommentar von @Student übernommen. Ich formulier das nachher ein bisschen um...

(26 Jan '14, 08:06) Clemens

@Herbert und @Clemes Ja, meine zu forschen Worte waren das! Schlage beim 1. Punkt Ergänzung vor "falls es nicht nur an der Vielzahl liegt (19 und mehr hintereinander)" ... letzlich reicht schon bisschen Text zwischendrin, damit LaTeX die Chance hat, eine Seite zu beenden und dann Float page(s) zu machen... denke ich mal, zumindest klappte das bei meinem "19er-Test".

(26 Jan '14, 08:19) Student

das ist genauso unzutreffend, weil du hier die Begriffe "ausgeben" und "platzieren" durcheinander wirfst. Zeig mal deinen 19-er Test, wo das hilft.

(26 Jan '14, 09:13) Herbert

@Herbert Wo denn? Da wird doch nur der Vorschlag gemacht, man möge mit Hilfe der Platzierungsoptionen und/oder durch Umformulieren des Textes dafür sorgen, dass die Warteschlange nicht blockiert wird. Man merkt ja im Dokument, welches die erste ist, die den Rest aufhält.

(26 Jan '14, 09:18) Clemens

@Herbert Oh, schon wieder gelöscht. War: 19 Gleitumgebungen mit [!htbp] und demo-\includegrapics - wie Du sagtest, trat der Fehler auf. Zwischendrin Leerzeilen eingefügt, trat immer noch auf. Minimal Text zwischendrin ergänzt, voila, Fehler weg, 1 Seite wurde normal aufgefüllt, dann kam eine float-Page. Wenn es relevant ist, kann ich es reproduzieren, aber nur wenn es irgendwie einen interessanten Aspekt hat.

(26 Jan '14, 09:24) Student

@Student @Herbert Ach so: 19 Gleitumgebungen am Stück ohne Text dazwischen? Auf die Idee, dass man das haben könnte, bin ich gar nicht gekommen. Mir scheint, dass man dann das Gleiten gar nicht haben will, sondern Bilderseiten produzieren... Da könnte man doch gleich mit {center} und \captionof arbeiten, oder nicht?

(26 Jan '14, 09:28) Clemens

@student: Die Beschreibung nützt mir nichts. Ich möchte dein Testdokumnt sehen, um festzustellen, wieso das klappen sollte.

(26 Jan '14, 10:05) Herbert

@Clemens: Ich bin an einem Beispieldokument interessiert, wo man die Fehlermeldung durch Ändern der Platzierungsparameter beseitigen kann.

(26 Jan '14, 10:07) Herbert

@Herbert wir kennen doch alle die Fragen von Anwendern, die ihren {figure}s nur [h] erlauben und sich dann über die verschiedensten Dinge wundern. Und solchen Anwendern hilft es dorch durchaus, auch mal eine Gleitseite zuzulassen. (Ich selbst hab, seit ich kapiert hab, was Gleitumgebungen sind, den Fehler nie mehr gehabt...)

(26 Jan '14, 10:11) Clemens

hat sich erledigt, habe mir ein Beispiel erzeugt.

(26 Jan '14, 10:12) Herbert

@Herbert Jetzt hab ich eins gepostet :-) Sorry, dass es aufwändiger zu besprechen war insgesamt, doch es ist nett, drüber zu reden! Vllt. kriegen wir den Tipp "selbst 19 Floats und mehr direkt hintereinanderweg zu schreiben, provoziert den Fehler natürlich, lass ein wenig Text zwischendrin, damit sie gleiten können, oder beginne durch \clearpage mit einer Float-Page" als (kürzere) Ergänzung hin (und können dann Kommentare wieder aufräumen).

(26 Jan '14, 10:25) Student

@Herbert @Student fühlt euch frei, den Text abzuändern. Je präziser er wird, desto besser.

(Ich glaube immer noch, dass wenn man 19 Gleitumgebungen direkt am Stück hat, ist es wahrscheinlich einen Gedanken wert, das Konzept des Dokuments/Kapitels... zu überdenken. Dass die dann all wirklich gleiten sollen, scheint mir doch eher unwahrscheinlich... Aber vielleicht seh ich das zu streng. Oder mir fehlt die Phantasie :) )

(26 Jan '14, 10:30) Clemens

hat sich doch nicht erledigt, es lag bei meinem Beispiel doch am Text ... Clemens, wenn du ein langes Kapitel hast und eine Gleitabbildung ist zu groß, dann kommt diese und alle folgenden an das Ende des Kapitels. Wenn du jetzt noach ein paar Ransbemerkungen hast, ist das Problem da.

(26 Jan '14, 10:47) Herbert

@Clemens: Dein Beispiel zeigt es wegen [ht], weil b nicht erlaubt ist. Auch [!ht] würde nicht helfen. Aber jetzt hat es sich wirklich erledigt :-)

(26 Jan '14, 11:04) Herbert

@Herbert ich weiß: aber weglassen der optionalen Argumente hilft. Ich hab den Text nochmal umformuliert. Ist es so besser?

(26 Jan '14, 11:06) Clemens

Durch weglassen kommt ja eben b dazu, [tbp] ist die Vorgabe.

(26 Jan '14, 11:08) Herbert

@Herbert genau und dadurch sind die Platzierungsparameter weniger restriktiv und in der Folge wird der Fehler vermieden. Das ist doch ein Beispiel, wo durch die Änderung der Parameter der Fehler vermieden wird, oder nicht?

(26 Jan '14, 11:41) Clemens
Ergebnis 5 von 20 Alle anzeigen
Open in writeLaTeX
\usepackage{morefloats}

aber ich vermute eher, dass es eine ungünstige Anwendung von Gleitumgebungen ist, die eigentlich nicht gleiten sollen, wenn man eine derartige Fehlermeldung erhält. Normalerweise können nur 18 Gleitumgebungen zwischengespeichert werden, deren Ausgabe mit einem \clearpage (automatisch bei \chapter) erzwungen werden kann. Mit morefloats sind es 36.

Permanenter link

beantwortet 25 Jan '14, 10:08

Herbert's gravatar image

Herbert
5.0k34

bearbeitet 25 Jan '14, 11:15

Diese Antwort schreibe ich nur, weil das Kommentarfeld zu klein ist für soviel Code. Ich lösche sie nacher wieder.

Hier habe ich 19 Abbildungen nacheinander, die den Fehler erzeugen:

Open in writeLaTeX
\documentclass{article}
\usepackage[demo]{graphicx}
\begin{document}
\begin{figure}[!htbp]
\includegraphics[height=10cm,width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[height=6cm,width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\end{document}

Jetzt füge ich nach der 2. Abbildung 2 Absätze mit minimal Text ein, und der Fehler geht weg. Denn nun schafft LaTeX das Platzieren zweier Abbildungen, bevor die nächsten sich aufstauen. Man kann das Problem also auch vermeiden, indem man nicht alle Abbildungen hintereinander weg schreibt, sondern im Text sinnvoll verteilt.

Open in writeLaTeX
\documentclass{article}
\usepackage[demo]{graphicx}
\begin{document}
\begin{figure}[!htbp]
\includegraphics[height=10cm,width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[height=6cm,width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}

text

text

\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\begin{figure}[!htbp]
\includegraphics[width={\textwidth}]{test}
\caption{Testgrafik}
\end{figure}
\end{document}
Permanenter link
Dieser Antwort ist "Community-Wiki" markiert.

beantwortet 26 Jan '14, 10:20

Student's gravatar image

Student
4702578103

wikifiziert 26 Jan '14, 10:26

das ist doch auch nicht meine Frage. Es geht um die Aussage, dass man mit dem Ändern der PLATZIERUNGSparameter den Fehler beseitigen kann. Durch Einfügen von Text ist es ja ohnehin klar.

(26 Jan '14, 10:36) Herbert

@Herbert Du hast zwar unten beschrieben, dass es sich erledigt hat, hier ist trotzdem ein Beispiel, bei dem die restrikve Wahl (im Beispiel [ht]) zum Fehler führt und wegnehmen Restriktionen zu einem funktionierenden Dokument führt: https://www.writelatex.com/read/jhzkzsstmcbq

(26 Jan '14, 10:45) Clemens

@Herbert Kann man :-) obiges 2. Beispiel würde ohne [!htbp] immer noch den Fehler bringen. Allein die Parameter zu ändern, ist aber nicht "hinreichend", da gebe ich Dir völlig recht, im Extremfall reicht es nicht.

(26 Jan '14, 10:47) Student

@Student scheint als könnte die „Antwort“ inzwischen wieder gelöscht werden

(06 Feb '14, 05:19) Clemens
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×185
×108
×83
×32
×27

Frage gestellt: 25 Jan '14, 09:35

Frage wurde angeschaut: 18,724 Mal

Zuletzt aktualisiert: 06 Feb '14, 05:19