WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Figure-Neugenerierung innerhalb einer Schleife verhindern

 

joekey
Forum-Century

Forum-Century


Beiträge: 169
Anmeldedatum: 03.04.08
Wohnort: Wien
Version: 2011b
     Beitrag Verfasst am: 05.07.2008, 22:05     Titel: Figure-Neugenerierung innerhalb einer Schleife verhindern
  Antworten mit Zitat      
Hallo,

bis jetzt habe ich mit den Plots nicht viel gemacht und stehe jetzt vor folgendem Problem. Mein Programm analysiert Daten und generiert ein einfaches Diagramm mit einen Subdiagramm (stellt die Ergebnisse in Textform dar). Das Problem ist das bei jedem Analysedurchlauf ein neues Figure generiert wird. Das will ich verhindern. Ich würde bevorzügen, wenn das letzte Figure gelöscht werden könnte und erst dann das neue generiert würde. Dieses Vorgehen scheint auch sinnvoller wegen der Textergebnissen die bei jedem Durchlauf neu berechnet werden und in Subdiagramm dargestellt werden. Für das Generieren der Figure benutze ich folgende Funktion:

Code:

function createFigureTest(obj)

% Create figure
figure1 = figure('MenuBar','none','Toolbar','none','Position',[150 300 1100 400]);

% Create axes
axes1 = axes('Parent',figure1,'Position',[0.06953 0.11 0.4688 0.815]);
hold('all');

% Create plot
plot(obj,'Parent',axes1);

% Create title
title('Equity Curve','FontWeight','bold','BackgroundColor',[1 1 1]);

% Create axes
axes('Parent',figure1,'ZColor',[1 1 1],'YTick',zeros(1,0),'YColor',[1 1 1],'XTick',zeros(1,0),'XColor',[1 1 1],...
    'Position',[0.5594 0.11 0.4203 0.815]);
% Uncomment the following line to preserve the X-limits of the axes
% xlim([0 1]);

% Create title
title({'Detailed Info'},'LineWidth',1,'FontWeight','bold','BackgroundColor',[1 1 1]);

% Create textbox
annotation(figure1,'textbox',[0.5734 0.8581 0.05859 0.05556],'String',{'Strategy'},'LineStyle','none');

% Create textbox
annotation(figure1,'textbox',[0.7755 0.854 0.05469 0.05556],'String',{'Results'},'LineStyle','none');

% Create textbox
annotation(figure1,'textbox',[0.576 0.131 0.1881 0.7341],'String',{'res1','res2','res3','res4'},...
    'FitBoxToText','off');

% Create textbox
annotation(figure1,'textbox',[0.7789 0.131 0.1872 0.7321],'String',{'res1','res2','res3','res4'},...
    'FitBoxToText','off');
end
 


Hätte vielleicht jemand eine Idee?

Danke Joe
Private Nachricht senden Benutzer-Profile anzeigen


dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.07.2008, 00:18     Titel:
  Antworten mit Zitat      
Hallo,

das Figure (oder die Figure?) wird hier immer wieder neu generiert:
Code:
% Create figure
figure1 = figure('MenuBar','none','Toolbar','none','Position',[150 300 1100 400]);


Du könntest dies umgehen indem du einfach
Code:
verwendest. Diese Funktion gibt dir das Handle auf das aktuelle Figure zurück. Eventuell noch
Code:
um den Figureinhalt zu löschen.

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
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 posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button 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.