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

Problem mit Uhrzeit

 

L3xiE
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 22.07.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2012, 13:17     Titel: Problem mit Uhrzeit
  Antworten mit Zitat      
Hallo liebe Leute,

ich hab folgendes Problem. Ich möchte ein Temperatur-Zeit Diagramm auftragen und habe versucht das ganze mit dem nachfolgenden Code zu lösen, aber es klappt leider nicht.....


Code:
[Daten, Zeit]=xlsread('P_IP_050109.xls'); %Trennung von Zeit und Daten
K_Temp1=Daten(:,1); %Kuenstlich belueftete Tempreihe
Zeit_HM=datestr(Zeit,'HH:MM');%Konvertiert Zeit in Stringformat
h1 = plot(Zeit_HM,K_Temp1);
 


Es liegen mehrere Spalten vor, die ich in Abhängigkeit der Zeit auftragen möchte. (Temperatur, Strahlungsbilanz, Windgeschwindigkeit). Die Zeitreihe gilt für einen ganzen Tag.

Bis zum Plotten verläuft auch alles gut, aber wenn ich dann alles graphisch auftragen will, bekomme ich folgende Fehlermeldung:

??? Error using ==> plot
Invalid first data argument

Ich verwende die Matlabversion 7.10.0 R2010a.

Es wäre nett, wenn mir jemand helfen könnte.

Liebe Grüße

Edit: Auf Kascho's Einwand hin, habe ich nun noch richtigerweise Semikolons hinzugefügt

P_IP_050109.xls
 Beschreibung:
Die betrachtete xls Datei-

Download
 Dateiname:  P_IP_050109.xls
 Dateigröße:  159.5 KB
 Heruntergeladen:  405 mal


Zuletzt bearbeitet von L3xiE am 22.07.2012, 15:02, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


Kascho
Forum-Century

Forum-Century


Beiträge: 195
Anmeldedatum: 24.03.10
Wohnort: Jena
Version: R2008b ... :(
     Beitrag Verfasst am: 22.07.2012, 14:49     Titel:
  Antworten mit Zitat      
Hallo L3xiE,

Die verwendest datestr, dieser Befehl gibt dir einen String, also, Char. Das kann er natürlich nicht plotten. Versuche mal "datenum"

Weiterhin ist es sinnvoll deine befehle mit einem Semikolon abzuschließen, sonst wird das command window voll geschrieben.

Gruß, Kascho
Private Nachricht senden Benutzer-Profile anzeigen
 
L3xiE
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 22.07.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2012, 14:57     Titel:
  Antworten mit Zitat      
Erstmal danke für die Antwort!

Das Semikolon hab ich dummerweise vergessen.
Ich hab datenum schon ausprobiert, aber so erzeugt er mir bloß sowas:

Zeit_HM =

1.0e+005 *

7.3487
7.3487
7.3487
..........


und der Graph ist dementsprechend auch mist.

[...... soll andeuten, dass immer wieder 7.3487 für meine Uhrzeit da steht]

Liebe Grüße
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Kascho
Forum-Century

Forum-Century


Beiträge: 195
Anmeldedatum: 24.03.10
Wohnort: Jena
Version: R2008b ... :(
     Beitrag Verfasst am: 22.07.2012, 15:15     Titel:
  Antworten mit Zitat      
Jo, habe etwas verfrüht gepostet. Ist mir eben grad auch aufgefallen.

Also, so richtig bekomme ich es auch grad nicht hin.

Plotte mal deine Daten ohne die Zeit, also nur

Code:


Soll dein Ergebnis so aussehen? Wenn ja kannst deine X-Achse evtl. mit "datetick" richtig beschriften.

Btw., Das hier hab ich versucht, da hast de dann deine Zeit als Tausender Zahl

Code:

Zeit1=strrep(Zeit,':','');
for i=1:length(Zeit)
Zeit_HM(i,:)=str2num(Zeit1{i,1});
end    
 

Aber beim plotten haut da trotzdem irgendwas nich hin. Ich schau mirs nochma an.

*edit: Ok, ist natürlich klar, dass das nicht funktioniert. Man hat dann ja nen Sprung zwischen 12:59 und 13:00 --> 1259 und 1300 .
Also so wird es nix ^^

Gruß, Kascho
Private Nachricht senden Benutzer-Profile anzeigen
 
L3xiE
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 22.07.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2012, 15:27     Titel:
  Antworten mit Zitat      
Jo, das Ding soll so aussehen! Ich konnte aber leider nicht die dazugehörige Uhrzeit zu den minütlichen Temperaturwerten auf die x-Achse eintragen. Datetick ist wohl eine Option. Ich werde mal schauen, ob es so geht.

edit: haha stimmt, deswegen sieht der graph so bescheiden aus^^

Edit:
Code:
startDate=('12:01'); %Anfang auswaehlen
endDate=('12:00'); %Ende auswaehlen
xData = linspace(startDate,endDate,1439); %Minuten zwischen Ende-Start


Ich habe es jetzt so versucht, aber funzt leider auch nicht.

??? Error using ==> mtimes
Inner matrix dimensions must agree.

Error in ==> linspace at 22
y = [d1+(0:n-2)*(d2-d1)/(floor(n)-1) d2];

Zuletzt bearbeitet von L3xiE am 22.07.2012, 16:14, insgesamt 2-mal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Kascho
Forum-Century

Forum-Century


Beiträge: 195
Anmeldedatum: 24.03.10
Wohnort: Jena
Version: R2008b ... :(
     Beitrag Verfasst am: 22.07.2012, 16:00     Titel:
  Antworten mit Zitat      
Nochmal Hallo L3xiE,

habe in folgendem thread die lösung gefunden:

http://www.gomatlab.de/zeitangabe-auf-der-x-achse-t1439.html


Code:

zeitlabel=datestr(Zeit,'HH:MM');
int_min=70;
set(gca,'XTick',1:int_min:numel(zeitlabel));
set(gca,'XTickLabel',zeitlabel(1:int_min:end,:));
 


Mit "int_min" kannst du den Abstand der Punkte angeben, also hier aller 70 minuten.
Sieht halt nicht so toll aus, da es sehr eng wird.

*edit: Vllt. hilft dir folgendes Programm aus dem File Exchange:
http://www.mathworks.com/matlabcent.....ge/8722-rotate-tick-label

Gruß, Kascho
Private Nachricht senden Benutzer-Profile anzeigen
 
L3xiE
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 22.07.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2012, 23:15     Titel:
  Antworten mit Zitat      
Passt alles! Very Happy

Danke Kascho! Werd noch versuchen, die Sache mit dem x Label ein bisschen zu verfeinern, damit nicht alles so gequetscht aussieht.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
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.