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

x-Wert zum y-Wert

 

mk443
Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 01.11.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 00:21     Titel: x-Wert zum y-Wert
  Antworten mit Zitat      
Hallo liebe Matlab-Gemeinde,

ich habe ein Problem, kommen alleine nicht auf die Lösung.

Ich habe einen Vektor bzw. eine Variable mit 3.686.400 Werten.
Diesen Vektor plotte ich über:

Code:
plot(Channel_6_Data)


siehe Beispielplot

Ich bekomme jetzt entsprechend der 3.686.400 Werte meinen Verlauf (also die zugehörigen y-Werte) geplottet.

Nun möchte ich z. B. gerne herausfinden, welcher genaue x-Wert zum y-Wert von -0.006459 gehört? Die angezeigten 1.3e+05 sind mir noch zu ungenau.

Könnt ihr mir da weiterhelfen?

Gruß Anabelle

test.jpg
 Beschreibung:
Beispiel

Download
 Dateiname:  test.jpg
 Dateigröße:  25.92 KB
 Heruntergeladen:  364 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: 12.01.2018, 01:10     Titel:
  Antworten mit Zitat      
Hallo,

du kannst z.B. interpolieren:
Code:
xpassend = interp1(y, x, -0.006459)

Du musst die Daten nur auf einen Bereich eingrenzen, in dem die y-Werte monoton sind.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 01.11.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 01:20     Titel:
  Antworten mit Zitat      
Hallo Harald,

ich bekomme folgende Fehlermeldung:

Code:
Error using griddedInterpolant
The grid vectors must contain unique points.

Error in interp1 (line 149)
        F = griddedInterpolant(X,V,method);

Error in isel (line 36)
xpassend = interp1(a, b, -0.006459)


Wie kriege ich die y-Werte monoton?

Gruß Anabelle
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: 12.01.2018, 09:55     Titel:
  Antworten mit Zitat      
Hallo,

wie gesagt: auf einen Datenbereich eingrenzen, der klein genug ist.

Alternativen:
Code:
[~, best] = min(abs(b - (-0.006459)))
a(best)

oder
Code:
closeEnough = abs(b - (-0.006459) ) < 1e-6
a(closeEnough)


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

Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 01.11.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.01.2018, 15:58     Titel:
  Antworten mit Zitat      
Danke Harald. Hat super funktioniert Embarassed
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.