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

Funktion in GUI aufrufen und dort plotten

 

FB
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 13.11.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.12.2013, 11:11     Titel: Funktion in GUI aufrufen und dort plotten
  Antworten mit Zitat      
Hallo,

ich habe das Problem, dass ich eine Funktion aus Matlab (m-File) per Button-Druck (pushbutton) in meiner GUI (mit GUIDE erstellt) aufrufen kann, jedoch das "Resultat" nicht in die axes in der GUI geplottet wird, sondern ein neues Fenster dafür geöffnet wird.


Die GUI besteht aus einem pushbutton und einer axes-graphik.
Vereinfacht gesagt berechnet die Funktion mehrere Punkte und zeichnet kurven und Zylinder und hat die normale Gestalt:


Code:
function [ ] = myfunction ( )
"irgendwelche Berechnungen"
plot(berechnungen)
end



Für

Code:
function pushbutton_callback
myfunction;



wird die Funktion zwar aufgerufen, aber in einem neuen Fenster geöffnet.

Wie muss ich diesen Teil abändern, damit in die axes (Tag: figure) in der GUI geplottet wird?

axes(handles.figure, myfunction)

funktioniert nicht. Aber irgendwie in diese Richtung habe ich mir das gedacht.

Ich hoffe ich konnte das Problem klar schildern.

Danke schonmal für eure Ideen.

Gruß
Private Nachricht senden Benutzer-Profile anzeigen


BlackDread
Forum-Century

Forum-Century


Beiträge: 212
Anmeldedatum: 11.05.11
Wohnort: ---
Version: 2015a
     Beitrag Verfasst am: 11.12.2013, 12:35     Titel:
  Antworten mit Zitat      
Hallo FB,

du musst dem plot-Befehl sagen, in welche axes er plotten soll.

Code:
plot(axes-handle,xwerte,ywerte)


Grüße
Chris
_________________

--> Kapieren statt Kopieren <---
____________________________________________________
FAQs sind dazu da, FAQs zu beantworten Wink
Richtig fragen!
Private Nachricht senden Benutzer-Profile anzeigen
 
FB
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 13.11.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.12.2013, 14:22     Titel:
  Antworten mit Zitat      
Hallo Chris,

erstmal danke für die schnelle Antwort.

Ich habe jetzt in den Plot-Befehl zusätzlich das handle eingebunden.

Code:
plot3(handles.figure, x,y,z);


Jetzt wird ein Fehler "undefined variable "handles.figure" " ausgegeben.
Macht ja auch Sinn. Das handles.figure ist ja nur in dem GUI.m File enthalten und nicht im myfunction.m File.

Jedoch weiß ich nicht, wie ich das handle übergeben bzw. das Problem lösen kann.


Gruß
FB
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 12.12.2013, 11:14     Titel:
  Antworten mit Zitat      
FB hat Folgendes geschrieben:
Ich habe jetzt in den Plot-Befehl zusätzlich das handle eingebunden.
Code:

plot3(handles.figure, x,y,z);


Nicht das handle deines Fensters, sondern der Axes



FB hat Folgendes geschrieben:

Jetzt wird ein Fehler "undefined variable "handles.figure" " ausgegeben.
Macht ja auch Sinn. Das handles.figure ist ja nur in dem GUI.m File enthalten und nicht im myfunction.m File.

Jedoch weiß ich nicht, wie ich das handle übergeben bzw. das Problem lösen kann.


Gruß
FB


Hier kannst du doch an deine Funktion myfunction die nötigen handles übergeben,

Code:


function [ ] = myfunction (handles)
"irgendwelche Berechnungen"
plot3(handles.axes,x,y,z)
end


function pushbutton_callback
myfunction(handles);

 
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.