|
|
Plot direkt aus der Gui speichern |
|
Xenontwo |
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 05.11.07
|
|
|
|
Wohnort: Böblingen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.01.2008, 10:01
Titel: Plot direkt aus der Gui speichern
|
|
Moin!
Ich brauche nochmal Eure Hilfe!
Ich hab ein Programm geschrieben, dass aus XLS-Dateien über eine GUI ein Sprektrogramm plottet. Die Figure ist dabei in die GUI Oberfläche eingearbeitet (axis1). Kann man ja per guide einzeichnen.
Nun möchte ich die Figure als jpg abspeichern. Leider weiß ich nicht, wie ich die Figure ansprechen soll. Über den Tag geht es nicht. Auch per get... gcf oder gca geht es nicht, da bekomm ich nur invalid handle.
Jemand ne Idee?
Danke schön!
Gruß
|
|
|
|
|
Xenontwo |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 05.11.07
|
|
|
|
Wohnort: Böblingen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.01.2008, 10:05
Titel:
|
|
Ach ja, noch etwas: Wenn ich z.B. das handle aus hObject in einer Variable speicher, und diese übergebe, wird die gesamte GUI gespeichert. Da ist zwar der Plot drin, aber ich will nur den plot, nicht mit Oberfläche!
Danke!
|
|
|
havannalady |
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 08.01.08
|
|
|
|
Wohnort: KA
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.01.2008, 14:19
Titel: Das Problem kenn ich
|
|
hab auch ne Lösung dazu, weiß aber nicht, ob diese optimal ist
--> die axis heißt hier AX1
set(gcf,'units','pixels');
set(handles.AX1,'units','pixels');
pos1 = get(handles.AX1,'position') %left, bottom, width, height
%Abstand vom Rahmen für Text etc. von der Axis
pos2 = get(handles.AX1,'TightInset') %left, bottom, right, top
pos = [pos1(1)-pos2(1) pos1(2)-pos2(2) pos1(3)+pos2(1)+pos2(3) pos1(4)+pos2(2)+pos2(4)];
ausschnitt = getframe(gcf,pos);
imwrite(ausschnitt.cdata,'DeinBild.jpg');
Falls du eine bessere Lösung findest, unbedingt Bescheid geben, ich suche sie auch noch!!!!
VG!!
|
|
|
Xenontwo |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 05.11.07
|
|
|
|
Wohnort: Böblingen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.01.2008, 12:45
Titel:
|
|
So, hab ne etwas andere Lösung gefunden. Hab einfach ne Figure erstellt, die genau das gleiche plottet. Die habe ich dann auf visibile off gestellt, und diese vorher aber über das handle angesprochen. So konnte ich die wunderbar speichern. nach dem fertigen speichern wird sie dann halt wieder automatisch geschlossen. Von der Performance her,völlig unproblematisch.
Ach ja, hatte beim speichern der Bilder oft ein schwarzes Bild... das lag am renderer. Einfach per set(gcf,'renderer','zbuffer'), den renderer ändern, schon funzt es!
Grüße!
|
|
|
havannalady |
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 08.01.08
|
|
|
|
Wohnort: KA
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.01.2008, 14:56
Titel: noch ne lösung mit copyobj
|
|
figure('visible','off');
kopie_axis = axes;
copyobj(allchild(deine_axis),kopie_axis);
saveas(gca,'deinbild','jpg');
close(figure);
_________________
VG!
|
|
|
claude |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.11.2008, 12:21
Titel:
|
|
Hi!
Das Exportieren funktioniert. Nur leider übernimmt er nicht die Formatierungen der Plots. Habe Log Plots (bodediagramm). tut er das bei euch?
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|