ich erstelle einen Plot mit >10^9 Punkten und als fig sieht die Kurve O.K. aus
(Farbe = b). Wenn ich es als .eps speicher sehen verschiedene Zacken so aus als wären sie heller (sowohl am Monitor wie auch ausgedruckt).
Kennt jemand das Problem und vielleicht eine Lösung?
Mit welchem Programm öffnest du die .eps Bilder, nachdem sie mit Matlab exportiert wurden?
Ich hatte nämlich ein ähnliches Problem - zwar nicht mit Farben, aber mit verwischen von Kanten und ähnlichem. Was bei mir geholfen hat - ist aber wirklich keine schöne Lösung - war folgendes: Ich maximiere die .fig Datei in Matlab auf dem Bildschirm und wähle beim Export-Setup die Maximalwerte für dpi vor dem exportieren. Dadurch wird das Bild zwar größer, es lässt sich aber in anderen Programmen besser einbinden.
Als Alternative - noch unschöner, aber es funktioniert gerade wenn die Bilder anschließend noch bearbeitet werden sollen - habe ich das Bild unkomprimiert als .tiff abgespeichert und anschließend in dem anderen Programm geöffnet, bearbeitet und dort als .eps abgespeichert.
Vielleicht hilft es ja,
mfg
Mit welchen Renderer zeichnest Du die Bilder? Mit Painters werden sie als Vektor-Grafik im EPS gespeichert, mit ZBuffer und OpenGL werden dagegen Pixel-Grafiken gespeichert. Dabei führt möglicherweise die verlustbehaftete Kompression (JPEG) zu den Artefakten. Dann wäre ein PNG geeigneter.
wenn du in der Figure auf Edit -> Figure Properties gehst, dann kannst du rechts unten "Export Setup" auswählen und dort die entsprechenden Einstellungen ändern (evtl. musst du vorher noch etwas wie "axis image" eingeben, damit das Bild nicht verzerrt dargestellt wird).
Bindest du die Bilder ohne weitere Bearbeitung in Latex ein (also exportieren und dieses Bild direkt verwenden) und es funktioniert trotzdem nicht?
ja ich hab das Bild dann unbearbeitet eingebunden.
Wenn ich das als bitmap render tritt der effekt nicht auf. Allerdings ist das eps dann>200MB groß und die Beschriftungen und Axen sehen nicht mehr gut aus.
Puh, keine Ahnung. Sorry. Was ich versuchen würde ist:
- eine andere Farbe für den Plot verwenden
- das Bild (wenn es ein plot ist) in Black/White exportieren
- das Bild unkomprimiert exportieren und anschließend in einem anderen Programm als .eps abspeichern.
Sind alles keine schönen Vorschläge, aber mehr fällt mir auch nicht ein...
set(FigH, 'Renderer', 'ZBuffer');
print(FigH, '-depsc2', '-r300', 'Painters.eps');
% ==> EPS enthält eine Bitmap-Grafik % Das ist groß und enthält Artefakte beim Skalieren
set(FigH, 'Renderer', 'OpenGL');
% Equivalent zu ZBuffer
Das Problem von OpenGL und ZBuffer ist, dass das EPS-Format nur zweidimensional ist. Sich gegenseitig durchdringende Flächen sind deshalb in einem EPS nicht plastisch darstellbar. Deshalb werden Bitmap-Kopien der Bildschirmausgaben eingebunden, wenn ZBuffer oder OpenGL das Bild für Matlab rendern. Dann ist aber ein PNG viel effizienter und meistens deutlich kleiner.
Bei einem Vektor-EPS (also mit Painters-Renderer) sollte es übrigens gar keinen Unterschied machen, ob man die FIGURE auf Bildschirmgröße aufgezogen hat, oder es ganz winzig war!
Gruß, Jan
Einstellungen und Berechtigungen
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 posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.