goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 99413
Top-Poster: Johannes_B (5059)

Wir begrüßen unseren neuesten Benutzer GregTeX.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matlab2tikz, Tex capacity exeeded trotz tikz externalize

 

hofgockel
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 26.06.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.06.2019, 23:28     Titel: Matlab2tikz, Tex capacity exeeded trotz tikz externalize
  Antworten mit Zitat      
Hi zusammen,

ich schreibe gerade meine Masterarbeit und möchte diese in LaTex schreiben. Das ist das erste mal, dass ich LaTex verwende.

Ich habe in Matlab mit dem Befehl "matlab2tikz()" aus einem Plot eine .tikz Datei erzeugt. Diese binde ich in mein LaTex Dokument mit ein:

Lasse ich mir ein sehr kleinen Plot erstellen, wie das Ellipsoid, wird mir die Grafik erzeugt.
Möchte ich nun einen größeren Plot einbinden, kommt die Fehlermeldung:
Tex capacity exeeded, sorry ...

Ich habe das Netz durchforstet und bin immer auf dieses externalize und LuaLaTex gestoßen. Habe auch diverse Beispiele ausprobiert, leider ohne Erfolg.


Hier mein Minimalbeispiel:

Code • Öffne in Overleaf

\documentclass{article}
\usepackage{pgfplots}
\usepackage{tikz}

\pgfplotsset{compat=newest}
\usepgfplotslibrary{external}

\tikzexternalize[shell escape=-enable-write18]

\begin{document}

\input{ellipsoid.tikz}

\end{document}


Unter Texstudio konfigurieren - Befehle habe ich -shell-escape hinzugefügt (siehe Screenshot).

In meinem Ordner wird das Ellipsoid als pdf erzeugt.

Und das "\usepgfplotslibrary{external}" ist rot hinterlegt. Wenn ich mit der Maus drauf gehe, wird angezeigt "Befehl nicht erkannt"

Ich nutze Texstudio und MikTex, Packages sind aktuell.

Hoffe ihr könnt mir weiterhelfen. Bin langsam am verzweifeln.

Gruß Daniel

ellipsoid.tikz
 Beschreibung:
kleiner Plot, funktioniert

Download
 Dateiname:  ellipsoid.tikz
 Dateigröße:  30.2 KB
 Heruntergeladen:  20 mal
Bild.tikz
 Beschreibung:

Download
 Dateiname:  Bild.tikz
 Dateigröße:  3.25 MB
 Heruntergeladen:  20 mal
Sceenshot_konfig.jpg
 Beschreibung:
Texstudio konfig

Download
 Dateiname:  Sceenshot_konfig.jpg
 Dateigröße:  221.19 KB
 Heruntergeladen:  24 mal
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.06.2019, 08:08     Titel:
  Antworten mit Zitat      
Externalize arbeitet so, dass es für jedes Bild einen externen LaTeX-Aufruf durchführt, um ein PDF für dieses einzelne Bild zu erzeugen und dann dieses fertige PDF einzubinden statt jedes Mal das Bild neu zu erzeugen. Für Speicherplatzprobleme bringt das nur etwas, wenn man mehrere Bilder auf einer Seite hat. Wenn schon ein einziges Bild nicht verarbeitet werden kann, wird das natürlich auch nicht funktionieren. Solange das einzelne Bild verarbeitet werden kann, aber einfach lange dauert, bringt es natürlich einen Geschwindigkeitsvorteil nach dem ersten Lauf.

Dazu kommt, dass in Bild.tikz Befehle verwendet werden, die in deinem Beispiel nicht definiert sind und es daher beim LaTeX-Lauf für dieses Bild zu einer Fehlermeldung kommt.

In deinem Fall ist das große Bild in der Tat schlicht für pdflatex zu groß. Wenn du auf lualatex umsteigst, sollte es aber funktionieren. Bei mir geht
Code • Öffne in Overleaf
\documentclass{article}
\usepackage{amsmath}
\usepackage{pgfplots}

\pgfplotsset{compat=newest}
\usepgfplotslibrary{external}

\tikzexternalize

\begin{document}

\input{Bild.tikz}

\end{document}
jedenfalls, wenn ich das als test-externalize.tex speichere und dann lualatex -shell-escape test-externalize.tex (in einem Terminalfenster) aufrufe. Es dauert allerdings eine gefühlte Ewigkeit (ca. 21 Sekunden). Ob du in TeXstudio bereits LuaLaTeX aufgerufen hast, geht aus der Konfiguration nicht hervor. Ich denke aber nicht, weil es dann zu keinem Speicherproblem käme (außer dein Rechner verfügt nur über extrem wenig freien Speicher, was sehr unwahrscheinlich ist).

BTW: Das optionale Argument bei \tikzexternalize kannst du weglassen. Es setzt bei dir nur die erneut die Voreinstellung. Das Laden von tikz kannst du ebenfalls weglassen, weil das bereits von pgfplots erledigt wird.

hofgockel
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 26.06.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.07.2019, 09:28     Titel:
  Antworten mit Zitat      
Anonymous hat Folgendes geschrieben:
Externalize arbeitet so, dass es für jedes Bild einen externen LaTeX-Aufruf durchführt, um ein PDF für dieses einzelne Bild zu erzeugen und dann dieses fertige PDF einzubinden statt jedes Mal das Bild neu zu erzeugen. Für Speicherplatzprobleme bringt das nur etwas, wenn man mehrere Bilder auf einer Seite hat. Wenn schon ein einziges Bild nicht verarbeitet werden kann, wird das natürlich auch nicht funktionieren. Solange das einzelne Bild verarbeitet werden kann, aber einfach lange dauert, bringt es natürlich einen Geschwindigkeitsvorteil nach dem ersten Lauf.

Dazu kommt, dass in Bild.tikz Befehle verwendet werden, die in deinem Beispiel nicht definiert sind und es daher beim LaTeX-Lauf für dieses Bild zu einer Fehlermeldung kommt.

In deinem Fall ist das große Bild in der Tat schlicht für pdflatex zu groß. Wenn du auf lualatex umsteigst, sollte es aber funktionieren. Bei mir geht
Code • Öffne in Overleaf
\documentclass{article}
\usepackage{amsmath}
\usepackage{pgfplots}

\pgfplotsset{compat=newest}
\usepgfplotslibrary{external}

\tikzexternalize

\begin{document}

\input{Bild.tikz}

\end{document}
jedenfalls, wenn ich das als test-externalize.tex speichere und dann lualatex -shell-escape test-externalize.tex (in einem Terminalfenster) aufrufe. Es dauert allerdings eine gefühlte Ewigkeit (ca. 21 Sekunden). Ob du in TeXstudio bereits LuaLaTeX aufgerufen hast, geht aus der Konfiguration nicht hervor. Ich denke aber nicht, weil es dann zu keinem Speicherproblem käme (außer dein Rechner verfügt nur über extrem wenig freien Speicher, was sehr unwahrscheinlich ist).

BTW: Das optionale Argument bei \tikzexternalize kannst du weglassen. Es setzt bei dir nur die erneut die Voreinstellung. Das Laden von tikz kannst du ebenfalls weglassen, weil das bereits von pgfplots erledigt wird.



Danke für die schnelle Antwort, hat mir sehr weitergeholfen.

Ich habe immer mit pdflatex compiliert. Wenn ich auf lualatex umstelle und dein Terminalbefehl in den Einstellungen eingebe, funktionierts Wink

Gruß
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de