Seite 1 von 1

Matlab-Figure -> EPS -> Latex -> psfrag

Verfasst: So 7. Nov 2010, 09:13
von psfrag
Hallo,

ich habe ein Problem mit den Matlab Figures.
Ich habe lasse mir in Maltab 3D-Plots anzeigen und drehe bzw. veränder die Plots dann.
Anschließend möchte ich die veränderte Figure als EPS Datei speichern, um in meinem Latex Dokument dann mittels psfrag die Labels der Achsen und die Achsenbeschriftungen an die Schriftart, ... des Dokuments anzupassen.

Mein Problem ist nun, dass die Ersetzung mittels psfrag nicht klappt. Wie genau muss ich denn da vorgehen.
Suche ich die Achsenbeschriftung z.B. -20 im eps-File finde ich die nicht!
-> Da scheint mir ein Problem zu liegen.
Was also mach ich beim Export falsch?

Gibt es irgenteine Deluxe Variante für solche Ersetzungen?
-> Falls JA: bitte mit Beispiel!

Mfg
... und schonmal Danke für die Antworten

Verfasst: So 7. Nov 2010, 12:01
von iTob
Guten Morgen,

ich weiß, dass diese Antwort nicht die erhoffte ist, aber ich will dennoch fragen, warum die die Plots nicht direkt in LaTeX zeichnest, dann sparst du dir das Suchen und Ersetzen und kannst außerdem Formeln mit den gewohnten LaTeX-Befhelen einfügen.
Benutzen könntest du dafür das (meiner Meinung nach) sehr gut Dokumentierte PGF/TikZ bzw. das zugehörige pgfplots. Auf dieser Seite findest du Beispiele, die die Mächtigkeit ein Wenig illustrieren: http://www.texample.net/tikz/examples/

Viele Grüße,
Tobi

Verfasst: So 7. Nov 2010, 12:11
von pospiech
Um mit tikz zu zeichen, müsste man die Matlab Daten erst exportieren. Dann hat man noch die meist dynamisch im Simultationsskript angepassten x und y Achsen, die auch noch in tikz übernommen werden müssten. Und gerade bei 3D Daten reden wir hier von nicht ungewöhnlichen > 1e6 Datenpunkten.

ich finde die tikz plot Möglichkeiten schon spannend, aber habe sie mangels Integration in Matlab bislang nicht ausprobiert.

Zur ürsprünglichen Frage - es geht gar nicht. Matlab kann 3D plots nicht vektorisieren, bzw wenn du das manual erzwingst kannst du Stunden!! warten. Das ERgebnis ist trotzdem grauenhaft. Die 3D Bitmap plots sehen so schlecht aber gar nicht aus - nur LaTeX lässt sich dann nicht mehr integrieren.

Auch wenn es sich nicht auf 3D sondern nur auf Linienplots bezieht. Die typischen Matlabprobleme und Lösungen habe ich vor kurzem hier skizziert:
http://www.matthiaspospiech.de/blog/201 ... -problems/

Verfasst: So 7. Nov 2010, 12:14
von iTob
Ich weiß ja nicht, um was für eine Funktion es sich handelt, aber man kann die Funktion ja direkt an PGF übergeben und muss nicht Datenpunkte ex- und dann importieren...
Außerdem ist ja nicht gesagt, dass die Plots exakt so aussehen müssen wie in MATLAB oder?

Verfasst: So 7. Nov 2010, 12:33
von pospiech
iTob hat geschrieben:Ich weiß ja nicht, um was für eine Funktion es sich handelt, aber man kann die Funktion ja direkt an PGF übergeben und muss nicht Datenpunkte ex- und dann importieren...
ich glaube wir haben uns missverstanden. Ich habe Simulationen die z.T eine Stunde mit 2 GB Daten rechnen und am Ende extrahiere ich Daten zum Plotten. Funktionen die geplottet werden gibt es dabei gar nicht.
iTob hat geschrieben: Außerdem ist ja nicht gesagt, dass die Plots exakt so aussehen müssen wie in MATLAB oder?
Nein, das ist keine Anforderung. Aber die Skalierung der x,y Höhe bezogen auf die Achsenskalen (unskaliert, korrekt skaliert) sollte erhalten bleiben und die tics und ticlabels sollten dieselben bleiben.

Was mir vor allem fehlt ist die Erstellung von Plots direkt aus Matlab heraus. Wenn ich 2 Tage lang simuliere und hunderte von Plots erstelle, dann kann ich die nicht alle einzeln in LaTeX nachbauen.

Ich habe also ein Problem mit dem grundsätzlichen Arbeitsablauf - nicht dem Code.

Verfasst: So 7. Nov 2010, 12:36
von iTob
Ja ok, das ist was anderes... finds aber seltsam, dass es von Matlab keine schöne Exportmöglichkeit gibt. Dur wirst ja nicht der einzige sein, der die Plots in LaTeX weiterverarbeiten möchte...

Verfasst: So 7. Nov 2010, 12:42
von pospiech
iTob hat geschrieben:Ja ok, das ist was anderes... finds aber seltsam, dass es von Matlab keine schöne Exportmöglichkeit gibt. Dur wirst ja nicht der einzige sein, der die Plots in LaTeX weiterverarbeiten möchte...
Du glaubst gar nicht in welcher miesen Qualität plots in Publikationen auftauchen...

Wenn es eine Matlab-Code basierte plotengine mit tikz Backend gäbe wäre ich nicht unglücklich!

Verfasst: So 7. Nov 2010, 13:09
von iTob
Schau mal hier was Google mir grad ausgespuckt hat. Dort scheint es zwei Skripte zum Umwandeln von Matlab nach PGF zu geben, von denen das zweite vielversprechend aussieht.
Ich habe mit Matlab aber noch nie was zu tun gehabt (habe erst neulich Octave als Open-Source-Alternative entdeckt und verwende ansonsten GNUPLOT zum plotten) und kann dementsprechend nix zu den Paketen sagen...