0
在我的代碼中,我使用不同的文本文件來獲得流逝的時間和溫度。然後情節的溫度和時間 文本文件有這樣的Datenum Matlab:
Date; Time; Temp °C
06.12.2011; 10:35:11;-24.13
06.12.2011; 10:36:34;-24.00
06.12.2011; 10:37:56;-23.88
.
.
.
.
header=fgetl(fid);
data=textscan(fid,'%s','delimiter',';');
fclose(fid);
data=data{:};
day=data(1:3:end);
hour=data(2:3:end);
temp=str2double(data(3:3:end));
time=cellfun(@(x) sprintf('%s %s',day{strcmpi(hour,x)},x),hour,'uniformoutput',0);
timen=datenum(time,'dd.mm.yyyy HH:MM:SS');
seconds=timen*86400/60;
plot(seconds-seconds(1),temp);
xlabel('Time(mins)');
ylabel('Temp °C');
但現在當經過的時間是在文本文件大於24個小時(溫度讀數持續超過一天),該datenum數據給出了一個錯誤
Error using ==> dtstr2dtnummx
Failed on converting date string to date number.
任何建議,爲什麼發生這種情況,我嘗試使用在命令行模式下可以正常罰款相同
好像在一個條目的日期字符串在'time'變量與'dd.mm.yyyy HH:MM:SS'格式不匹配。例如,對於'datenum('12 .10.2010 A:B:C','dd.mm.yyyy HH:MM:SS'),你會得到同樣的錯誤。 – Kavka 2012-01-04 14:37:46