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

Aufeinanderliegende Plots mit zugehöriger Legende darstelle

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2011, 07:41     Titel: Aufeinanderliegende Plots mit zugehöriger Legende darstelle
  Antworten mit Zitat      
Hallo zusammen,
folgendes Problem:
Ich habe eine GUI-Oberfläche mit 22 Queckboxen, sobald ein Häkchen betätigt wird, soll ein Figure dargestellt werden. Bei einem weiteren Häkchen soll das nächste Figure in das andere hineingeplottet werden, um einen Vergleich zu visualisieren.
Nun besteht mein Problem darin, dass ich bei dem 2. Plot die Legende des 1. Plots überschreibe.

Hier mein Code für die Checkboxen:
Code:

% --- Executes on button press in checkbox1.
function checkbox1_Callback(hObject, eventdata, handles)
% hObject    handle to checkbox1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
figure(2)

status_2400=get(hObject,'Value');
if status_2400==1
    x=0:0.5:100;
    func_2400=2.4403e-018.*x.^11+-1.2833e-015.*x.^10+2.8915e-013.*x.^9+-3.6537e-011.*x.^8+2.8426e-009.*x.^7+-1.4062e-007.*x.^6+4.405e-006.*x.^5+-8.4118e-005.*x.^4+0.00089695.*x.^3+-0.0044014.*x.^2+0.0048469.*x.^1+5.127.*x.^0;
    axis([0 100 0 10])
    plot(x, func_2400,'b')
    legend('2400kW')
    hold on
end

% --- Executes on button press in checkbox3.
function checkbox3_Callback(hObject, eventdata, handles)
% hObject    handle to checkbox3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
figure(2)

status_2200=get(hObject,'Value');
if status_2200==1
    x=0:0.5:100;
    func_2200=-2.0444e-020.*x.^11+-7.1268e-018.*x.^10+4.6436e-015.*x.^9+-8.2911e-013.*x.^8+6.7458e-011.*x.^7+-2.1567e-009.*x.^6+-4.6846e-008.*x.^5+6.0688e-006.*x.^4+-0.00019152.*x.^3+0.0024877.*x.^2+-0.012368.*x.^1+4.99.*x.^0;
    axis([0 100 0 10])
    plot(x, func_2200,'g')
    legend('2200kW')
    hold on
end
 


Funktioniert das vielleicht irgendwie über handles???
Ich hoffe IHR könnt mir bei meinem Problem helfen!! (Matlab 7.11.0 (R2010b))

Viele Grüße


Idefix_1024
Forum-Century

Forum-Century


Beiträge: 230
Anmeldedatum: 16.10.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2011, 09:13     Titel:
  Antworten mit Zitat      
prinzipiell kann man genau definieren welche Plots in der Legende aufgeführt werden sollen.

hier mal ein kleines Beispiel
Code:

figure(1)
hold on
hPlot1=plot([1,2,3,4,5],[1,2,3,4,5],'r')
hPlot2=plot([1,2,3,4,5],[5,4,3,2,1],'b')
hPlot3=plot([1,2,3,4,5],[1,2,3,5,4],'g')
legend([hPlot1,hPlot3],'test1','test3')
 


man kann also handles zu den einzelnen Plots definieren und diese dann explizit in der Legende verwenden um eine korrekte Zuordnung zu erreichen.

hilft das bei Deinem Problem?
Leider kann man Deinen Code nicht ausprobieren. Aber ich denke wenn man die handles der Plots übergibt sollte man das Problem lösen können.
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 - 2025 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.