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

datacursormode get information which subplot

 

Romanov

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.05.2016, 14:18     Titel: datacursormode get information which subplot
  Antworten mit Zitat      
Hi everyone,

i use datacursormode to get point information from the figure.
I have opened 3 subplot in one figure.
When i click on one subplot i need the information, from which subplot i get the point.
How do i identify the subplot from which i got the point.

Thank you.

Romanov


Romanov

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.05.2016, 15:41     Titel:
  Antworten mit Zitat      
Vielleicht noch einmal auf deutsch.

Ich verwende datacursormode um Punkte in einem Koordinatensystem zu identifizieren.
Nun habe ich aber in einem Figure über subplot mehrere Koordinatensysteme.
Wenn ich nun auf einen der Subplotkoordinatensysteme klicke, möchte ich auch die Information zurückführen, aus welchem Subplotkoordinatensystem die Punkte stammen.

Vielen Dank für die Hilfe.

Romanov
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 12.05.2016, 10:08     Titel:
  Antworten mit Zitat      
Hallo Romanov,

In der Dokumentation von datacursormode steht:
Zitat:
Use the getCursorInfo function to query the data cursor mode object (dcm_obj in the update function syntax) to obtain information about the data cursor. For example,
Code:
info_struct = getCursorInfo(dcm_obj);

Der info_struct enthält dann das 'Target'.
Hilft das schon?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Romanov

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.05.2016, 22:32     Titel:
  Antworten mit Zitat      
Hallo Jan,

ich sehe noch nicht, wie mir das weiterhilft mit den subplots.
Ich bekomme dadurch etliche Infos, weiß damit aber nichts anzufangen.
Kannst du mir vielleicht sagen, wo genau dann diese Info der Identifizierung der subplots auftaucht?

Danke und Grüße

Romanov
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 23.05.2016, 13:50     Titel:
  Antworten mit Zitat      
Hallo Romanov,

Wie schon geschrieben: Der info_struct enthält dann das 'Target'. info_struct.Target ist der Handle des angewählten Objekts.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
faulix

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.05.2019, 21:56     Titel: Lösung / Solution - für 2x1 subplot (erweiterbar)
  Antworten mit Zitat      
Ich hab mal rumprobiert und für einen 2x1 subplot eine Lösung gefunden
infos für datadursormode() unter:
https://de.mathworks.com/help/matla.....cursormode.html#bsawkea-5

Code:

% datencursorobjekt erstellen
h_dc = datacursormode(gcf);

% mit eigener funktion den cursor formatieren
set(h_dc,'UpdateFcn',{@myupdatefcn,t,BegZahl})

function txt = myupdatefcn(~,event_obj,t,info)
% Customizes text of data tips
pos = get(event_obj,'Position');
I = get(event_obj, 'DataIndex');
% oberer subplot // lower subplot
if event_obj.Target.Parent.Parent.CurrentAxes == event_obj.Target.Parent.Parent.Children(2)
    txt = {['Datum: ',datestr(t(I))],...
           ['Y: ',num2str(pos(2))]};
end
% unterer subplot // upper subplot
if event_obj.Target.Parent.Parent.CurrentAxes == event_obj.Target.Parent.Parent.Children(1)
    txt = {['Datum: ',datestr(t(I))],...
           ['Y: ',num2str(pos(2))],...
           ['Info: ',info{I}]};
end
end
 


ich weiss nicht wieso die reihenfolge der Axen in event_obj.Target.Parent.Parent.Children umgekehrt ist, also muss man wohl einfach ein bisschen rumprobieren

i'm not sure why the sequence of axes in event_obj.Target.Parent.Parent.Children is inverted but it works
you will have to go by trial and error
 
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.