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

Plot aktualisieren aber "Optik" behalten

 

balli1187
Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 15.06.12
Wohnort: Magdeburg
Version: 2007b
     Beitrag Verfasst am: 15.04.2014, 14:22     Titel: Plot aktualisieren aber "Optik" behalten
  Antworten mit Zitat      
Hallo,

ich habe eine GUIDE-Oberfläche, in der ein Axes-Feld Messwerte anzeigt.
Die Messwerte werden sekündlich durch einen Timer erneuert und geplottet.
Das funktioniert soweit sehr gut.

Jetzt möchte ich aber die Optik meines Plots etwas anpassen und habe allerlei Sachen, wie XTick, XLabel, usw mit set in der CreateFcn des Axes-Feldes definiert. Wenn ich aber die Messwert-Aufnahme starte, werden meine Einstellungen überschrieben und ich bekomme die "Standard"-Ansicht.

Kann mir jemand sagen, wie ich das verhindern kann. Es sollen quasi nur die zu Daten geändert werden, nicht aber die übrigen Einstellungen des Plots.

Vielen Dank, Stephan
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.04.2014, 14:27     Titel:
  Antworten mit Zitat      
Hallo,

erster Plot:
Code:

folgende Plots
Code:
set(p, 'XData', xneu, 'YData', yneu)

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
balli1187
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 15.06.12
Wohnort: Magdeburg
Version: 2007b
     Beitrag Verfasst am: 15.04.2014, 14:58     Titel:
  Antworten mit Zitat      
Hallo Harald,

das funktioniert leider nicht. Ich bekomme folgende Fehlermeldung
Code:
Undefined function or variable


Gruß, Stephan
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.04.2014, 15:26     Titel:
  Antworten mit Zitat      
Hallo,

dann schau doch mal in den Workspace. Auf welche der drei Variablen bezieht sich das?

Falls auf p: dann liegt das wahrscheinlich daran, dass du p in einem anderen Callback angelegt hast. Siehe
http://www.mathworks.de/help/releas.....-data-in-a-guide-gui.html

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
balli1187
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 15.06.12
Wohnort: Magdeburg
Version: 2007b
     Beitrag Verfasst am: 15.04.2014, 15:32     Titel:
  Antworten mit Zitat      
Code:
dann schau doch mal in den Workspace. Auf welche der drei Variablen bezieht sich das?

Falls auf p: dann liegt das wahrscheinlich daran, dass du p in einem anderen Callback angelegt hast.

Richtig, es bezieht sich auf 'p' in deinem Code. Den link kann ich nicht öffnen... Mathworks-Account habe ich nicht.

das Ganze müsste ja aber funktionieren, wenn ich 'p' in der handles-Struktur ablege, oder? Ich werds mal probieren.

EDIT:
ich bekomme immer noch Fehlermeldungen und weiß nicht woran es liegt...
macht es eigentlich einen Unterschied welchen Plot-Stil ich nutze? Ich plotte 2 Bar-Diagramme mit plotyy und das axes-Feld. Mir ist nur gerade aufgefallen, dass ich dies noch nicht erwähnt hatte...
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.04.2014, 16:21     Titel:
  Antworten mit Zitat      
Hallo,

ja, das macht natürlich einen Unterschied. Du hast dann nämlich zwei übereinanderliegende Plot-Objekte, die du ggf. beide aktualisieren musst.

Bitte auch immer angeben, welche Fehlermeldungen du bekommst. Das ist nämlich schwer zu erahnen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
balli1187
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 15.06.12
Wohnort: Magdeburg
Version: 2007b
     Beitrag Verfasst am: 15.04.2014, 17:26     Titel:
  Antworten mit Zitat      
Harald hat Folgendes geschrieben:
ja, das macht natürlich einen Unterschied. Du hast dann nämlich zwei übereinanderliegende Plot-Objekte, die du ggf. beide aktualisieren musst.

okay. Ich dachte, ich kann das Vorgehen auf das zweite Plot-Objekt übertragen. In einem normalen m-File habe ich es folgendermaßen definiert
Code:
[x y1 y2]=plotyy(x_Werte, y1_Werte, xWerte, y2_Werte,'bar','bar')

ich wollte dann nur 'XData' und 'YData' für y1 und y2 aktualisieren.
Meine Bedenken lagen eher darin dass 'Bar' mir ein Problem bereitet, da hier manches anders zu sein scheint... Ich konnte beispielsweise die Farbe der Balken nicht wie üblich mit
Code:
set(y1,'Color','r');
in Rot ändern...

Zitat:
Bitte auch immer angeben, welche Fehlermeldungen du bekommst. Das ist nämlich schwer zu erahnen.

entschuldige, da hast du natürlich recht.
Fehler treten immer in der TimerFcn auf, wenn die von set-Anweisung ausgeführt werden soll. Wenn ich dass Plot-Objekt (also y1 und y2) in die handles-Struktur aufnehme (handles.y1, handles.y2) macht handles den oben genannten Fehler. ich kann jetzt leider keinen genauen Wortlaut wiedergeben, weil ich das Programm an meinem Heimrechner nicht ausführen kann (es fehlen Schnittstellen, die vorher initialisiert werden).

Grüße, Stephan
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.