Verfasst am: 13.12.2011, 11:56
Titel: Problem mit copyobj
Ich habe eine GUI in der mehrere axes übereinander liegen. In diese axes plotte ich verschiedene Dinge. Das klappt auch alles soweit. Nun möchte ich alles geplottete als png speichern. Ich mache das mit folgendem Code
Code:
%Pfad und Dateiname zum speichern
[pngfile, path2png] = uiputfile('*.png','Datei speichern unter');
FileName = fullfile(path2png, pngfile);
%suchen aller vorhandenen axes
allAxesInFigure = findall(gcf,'type','axes');
%Neue Figure in die alle vorhandenen axes reinkopiert werden
newFigH = figure('units', 'normalized','Position', [0,0,0.6,0.8],'PaperPositionMode','auto','visible','on');
copyobj(allAxesInFigure, newFigH);
%als png speichern
saveas(newFigH,FileName,'png');
%neue Figure schließen
close(newFigH);
Das funktioniert auch soweit.
Nun ist es allerdings so, dass ich in einem meiner axes ein Koordinatensystem habe mit Achsenbeschriftung der x-,y- und z-Achse, in dem png-Bild wir allerdings nur die z-Achsen Beschriftung angezeigt.
Woran könnte das liegen?
Nächstes Problem ist, das wenn ich mir eine colormap definiere, der entsprechende Plot auch super angezeigt wird in meiner GUI, in dem png-Bild allerdings anders farbig codiert erscheint.
Und wenn ich eine colorbar selbst erstelle, die von rot über geld nach grün geht, wird die in meinem png-Bild einfach mal um blau erweitert, in der GUI aber richtig angezeigt.
Ich bin langsam am verzweifeln, da ich nicht weiß woran das alles liegt. Ich dachte das copyobj alles eins zu eins kopiert, aber offensichtlich gibt es da doch noch irgendwelche Ausnahmen.
Für die Sache mit der colormap und der colorbar habe ich eine Lösung gefunden, man muss sie einfach nochmal definieren.
Für die Achsenbeschriftung stellt sich die Sache immer noch etwas kompliziert da.
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.