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

Punkte manuel in Plot einfügen oder löschen

 

JP2020
Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 18.03.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.08.2020, 14:40     Titel: Punkte manuel in Plot einfügen oder löschen
  Antworten mit Zitat      
Hallo zusammen,
ich hänge mal wieder an einem Problem und hoffe einer von euch hat vielleicht eine Lösung Idee, wenn es überhaupt eine gibt Smile

Ich fange mal ganz von vorne an...

Ich habe Koordinatenverläufe von Beinen beim menschlichen Gang. Über verschiedenen Rountinen habe ich recht zuverlässig die Punkte berechen können, an dem die Ferse auf dem Boden aufkommt und die Zehen den Bode verlassen. Doch leider schleicht sich (je nach Aufnahme Qualität der Koordinaten) fehlerhafte Punkte ein oder Punkte werden nicht erkannt.

Kennt ihr eine Möglichkeit in einen Plot nachträglich Punkte per Mausklick einzufügen und die dann auch in der Fortführenden Rechnug nutzen zu können? Ebenfalls besteht die Möglichkeit Punkte per Mausklick zu löschen, dass diese für die weitere Rechnung nicht mehr zur Verfügung stehen?

ich habe euch mal zwei Beispiele mitgebracht...

grundsätzliche Erklärung zu den Bildern. Die durchgezogene Linie stellt den Verlauf der Ferse beim gehen da (oben links, unten rechts) und die gestrichelte Linie den Verlauf der Zehen (oben links, unten rechts).

die Kreise zeigen den Punkt, an dem die Ferse den Boden berüht und das Sternchen den Zeitpunkt, an dem die Zehen den Boden verlassen.

BILD 1:
mir fehlt beim oberen Bild (links) ein Sternchen direkt am Anfang, dass ich gerne manuell setzen würde

BILD 2:
im unteren Bild (rechts) habe ich zu viele Punkte, an dem die Ferse aufsetzt. Jeweils ein Punkt am Anfang als auch am Ende müssen gelöscht werden


soo ich hoffe ih habe es detail getreu erklärt und einer hat einen Rat Smile

Danke schonmal im vorraus!

Unbenannt.PNG
 Beschreibung:
grundsätzliche Erklärung zu den Bildern. Die durchgezogene Linie stellt den Verlauf der Ferse beim gehen da (oben links, unten rechts) und die gestrichelte Linie den Verlauf der Zehen (oben links, unten rechts).

die Kreise zeigen den Punkt, an dem die

Download
 Dateiname:  Unbenannt.PNG
 Dateigröße:  16.93 KB
 Heruntergeladen:  192 mal
Unbenannt1.PNG
 Beschreibung:
grundsätzliche Erklärung zu den Bildern. Die durchgezogene Linie stellt den Verlauf der Ferse beim gehen da (oben links, unten rechts) und die gestrichelte Linie den Verlauf der Zehen (oben links, unten rechts).

die Kreise zeigen den Punkt, an dem die

Download
 Dateiname:  Unbenannt1.PNG
 Dateigröße:  17.29 KB
 Heruntergeladen:  172 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


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

mit ginput kannst du die Koordinaten eines Klicks abfragen. Dann müsstest du "passend reagieren". Es kann sein, dass es leichter ist, den Anwender zunächst nach zu entfernenden und dann nach zu ergänzenden Punkten zu fragen.

Die sauberste Lösung wäre meines Erachtens, das automatisiert zu verarbeiten, indem beispielsweise die Punkte, in denen die Ferse aufsetzt, nicht zu nah beieinander sein dürfen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
JP2020
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 18.03.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2020, 21:47     Titel:
  Antworten mit Zitat      
Herzlichen Dank Harald, hat super funktioniert Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
JP2020
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 18.03.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.08.2020, 22:22     Titel:
  Antworten mit Zitat      
ich hatte das ausprobiert und für normale Plots hat das eigentlich ganz gut funktioniert.. dann kam mein Problem, dass ich ginput wohl nicht im App designer funktioniert, weil man nicht sagen kann, auf welchen schon vorhandenen Graphen es zugreifen soll. Durch zufall bin ich online auf die Toolbox ginput for Gui gestoßen, wo man mit dem Befehl ginputax direkt auf die axen zugreifen kann.

Jetzt hat sich bei mir ein neues Problem aufgetan, an das ich noch nicht gedacht habe aber vielleicht habt ihr eine Lösung.

Wenn ich mit ginput/ ginputax einen Punkt auswähle und nachher mit find versuche den index der x und y Koordinaten zu finden, geht das leider nicht. Da ich meistens genau einen "interpolierten" Raum zwischen Zwei Punkten anklicke. Habt ihr eine Idee, wie man es einstellt, das an mit ginput/ ginputax nur die "wirklichen" Datenpunkte auswählen kann?

Oder habt ihr zufällig noch eine andere Idee?

Beste Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 20.08.2020, 09:02     Titel:
  Antworten mit Zitat      
Hallo,

ich würde den nächsten Datenpunkt zum ausgewählten Punkt finden:

Code:
[x, y] = ginput(1);
[~, pos] = min( (x-xdata).^2 + (y-ydata).^2 );


Alternativ könnte man den ausgewählten Punkt vor oder nach dem nächsten Datenpunkt einfügen, je nachdem ob der vorherige oder der nächste Punkt näher ist.

Bitte den Status aktuell halten. Bei beantworteten Themen schaut u.U. niemand mehr nach Zusatzfragen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
JP2020
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 18.03.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.08.2020, 18:56     Titel:
  Antworten mit Zitat      
danke Harald, aber wie gesagt funktioniert ginput scheinbar nicht im Kombination mit dem App Designer, da er immer ein neues Datenfenster öffnet. Deswegen suche ich nach einer Alternative... vielleicht wo man nicht irgendeinen Koordinatenpunkt auswählt, sondern genau einen Datenpunkt.

Ähnlich wie wenn man mit dem Mauscursor über den Plot geht und dann kriegt man die Datenpunkte ja auch angezeigt und kann die Anklicken. Ich habe da einiges gefunden mit CurrenPoint wie z..
Code:
axes_handle = gca
pt = get(axes_handle, 'CurrentPoint')


macht das Sinn damit zu arbeiten?

kurz gesagt:
Ich habe in Matlab App Designer zwei Graphen, einmal mit den Daten Linker Fuß und einmal mit den Daten des rechten Fußes. Ich möchte Datenpunkte, die meine Programmierung nicht erkannt hat, durch Mausklick hinzufügen.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

ich hatte dich so verstanden, dass die Problematik mit App Designer durch ginputax (ich vermute, den File Exchange - Eintrag?) gelöst ist. Meinen Vorschlag könntest du ja entsprechend auch mit ginputax umsetzen.

Falls nicht, ist der CurrentPoint-Ansatz sicher auch einen Versuch wert. Ob das allerdings mit App Designer funktioniert, weiß ich nicht.

Für mich klingt das hier nach dem, was du suchst:
https://www.mathworks.com/matlabcen.....ondownfcn-in-app-designer

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
JP2020
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 18.03.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2020, 15:12     Titel:
  Antworten mit Zitat      
Danke Harald,
ja ich dachte auch das ich das ginput Problem gelöst hätte, war aber nicht so.
Danke für deinen anderen Tip, habe eine Lösung gefunden Smile !
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

Zitat:
habe eine Lösung gefunden

Sehr schön. :)
Vor allem für andere, die später vielleicht hierauf stoßen, bitte auch dazu schreiben, was die Lösung ist.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
JP2020
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 18.03.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.09.2020, 15:08     Titel:
  Antworten mit Zitat      
sorry, dass ich erst so spät antworte. Hatte ein paar Probleme mit dem Internet...

wie folgt habe ich das Problem gelöst:

Ich habe als Toolpacket GINPUT FOR UIAXES gedownloaded und damit kann man GIPUT in UIAXES nutzen und dann habe ich dein VOrschlag genutzt.

Beste Grüße Jana
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.