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

Datenbereich eingrenzen

 

sweety2210
Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 09.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.08.2013, 17:32     Titel: Datenbereich eingrenzen
  Antworten mit Zitat      
Hallo,

ich bin neu hier und muss für die Uni eine kleine Hausübung schreiben. Dafür muss ich kleine Matlab-Aufgaben lösen. Leider kenn ich mich wirklich nicht sehr gut aus und hab davor auch nie programmiert. Deswegen habe ich bereits jetzt Probleme mit den Aufgaben. Es wäre super, wenn ihr mir helfen könntet und wenn ja dann biiitte nicht zu kompliziert erklären. Embarassed

Also mein erste Problem wäre, dass ich nicht weiß wie ich einen Datenbereich eingrenze. Ich habe einen Datensatz mit Höhenmessungen. Davon möchte ich jetzt einen Bereich auswählen, der eine starke Höhenänderung über die Zeit hat. Diesen Bereich hab ich jetzt mal mit dem axis-Befehl eingegrenzt. Die Achseneingrenzung hab ich manuell gemacht, also im Diagramm geschaut bei welcher Zeit ungefähr das lokale Minimum ist und wo das Maximum und die Werte dann aus der Tabelle abegelesen (Workspace). Aber ich möchte dafür eine Funktion/Schleife was auch immer, dass es mir tatsächlich nur den Bereich ausspuckt und ich dann auch nur mit diesem Bereich rechne.

Wieß jemand wie ich das mache?

Vielen, vielen Dank schon mal.

Code:
dataset = importdata('dataset.log');

time = dataset.data(:,1); % Zeit in Sekunden
alt = dataset.data(:,4); % Höhe über dem Meeresspiegel in Metern

plot(time,alt)
xlabel('Zeitdauer [s]','Fontsize',10);
ylabel('Höhe über dem Meeresspiegel [m]','Fontsize',10);
axis([377.259000000000 428.059000000000 450 700]);


Ich merke jetzt, dass der Datensatz hierfür zu groß ist. Dann schick ich euch mal die beiden Plots. Der zweite ist der Ausschnitt vergrößert.

Höhenveränderung.jpg
 Beschreibung:

Download
 Dateiname:  Höhenveränderung.jpg
 Dateigröße:  36.1 KB
 Heruntergeladen:  522 mal
Ausschnitt.jpg
 Beschreibung:

Download
 Dateiname:  Ausschnitt.jpg
 Dateigröße:  20.27 KB
 Heruntergeladen:  498 mal
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 09.08.2013, 18:38     Titel:
  Antworten mit Zitat      
was ist denn jetzt deine frage? wie du den bereich ermittelst oder wie du dann die achsen einteilst ?
Code:
kann man die achsen einteilen
den bereich mit maximaler steigung köntest du mit
Code:
suchen für weitere hilfe poste bitte code und stell konkrete fragen fehlermeldungen gewünschtes ergebniss etc
grüße winkow
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 10.08.2013, 02:51     Titel: Re: Datenbereich eingrenzen
  Antworten mit Zitat      
Hallo sweety2210,

Wenn ich es richtig verstehe ist dies das Problem:
Zitat:
...im Diagramm geschaut bei welcher Zeit ungefähr das lokale Minimum ist und wo das Maximum...

Ich sehe eine Menge lokaler Minima. Für eine automatische Auswahl werden aber ganz genau Instruktionen benötigt, was ausgewählt werden soll. Kannst Du das exakt definieren?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
sweety2210
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 09.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2013, 18:14     Titel:
  Antworten mit Zitat      
Danke erstmal für eure Antworten.

Also ich habe mittlerweile manuell das ungefähre Minimum und Maximum rausgesucht:
Minimum=377,259 sec
Maximum=428,059 sec

Ich möchte jetzt also einen Befehl oder Ähnliches, das mir den Plot zeichnet, aber nur ab Sekunde 377,259 bis zur Sekunde 428,059.
Klar kann ich das mit axis-Befehl machen.
Aber mit den Daten in diesem Bereich muss ich später noch rechnen d.h. wenn ich z.B. den Mittelwert der z.B. Höhe in diesem Zeitfenster berechnen will und ich nur den axis-Befehl benutzt hätte, bringt mir das ja auch nichts.
Versteht ihr mich?

Ich habs mal versucht mit
Code:
plot(time(time>=377.259 & time<=428.059), alt)

(alt=Höhe)

aber das hat natürlich nicht funktioniert...
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 13.08.2013, 18:28     Titel:
  Antworten mit Zitat      
Zitat:
Ich habs mal versucht mit
Code:
plot(time(time>=377.259 & time<=428.059), alt)

aber das hat natürlich nicht funktioniert...

auch wenn sätze wie "hat natürlich nicht funktioniert" vor informationen überquellen ist es in solchen fällen doch sinnvoll die fehlermeldung zu posten Smile da steht bestimmt das die arrays nicht gleich lang sind.
Code:
plot(time(time>=377.259 & time<=428.059), alt(time>=377.259 & time<=428.059))
sollte es dann tun
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
sweety2210
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 09.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2013, 18:45     Titel:
  Antworten mit Zitat      
Oh je. Entschuldigung. Klar, ich hätte die Fehlermeldung posten sollen.
Tut mir Leid. Embarassed

Aber jetzt gehts.

Vielen, vielen Dank!!!

Ich hoffe ich kann damit jetzt auch weiter rechnen. Very Happy

Danke, danke!!!
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 - 2025 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.