我試圖讀取Matlab中的.txt文件,其中包括有關太陽輻射和溫度的月度信息。月份與文本一樣,即1月份,2月份等。然後利用這些信息需要製作一些圖表來顯示每月的信息,例如月度太陽輻射在x軸上有月份。除了需要在相同的圖上繪製兩個圖,因爲我有Matlab 2015b需要使用plotyy。 問題:我認爲從文件中讀取的月份是正確的,但是當我繪製所有月份爲一月份時,我無法正確繪製兩張圖,因爲時間不同。Matlab:如何從.txt文件中正確讀取月份
,使用的代碼是:
fidata = fopen('Asmara-mon2.txt', 'r');
formatSpeci = '%s';
N1 = 9;
% h1=('Month' 'Temp' 'Tamin' 'Tadmin' 'Tadmax' 'Tamax' 'RH');
h3 = textscan(fidata,formatSpeci,N1,'Delimiter','|');
asmara_precipitation= textscan(fidata,'%{MM}D %f %f %f %f %f %f %f %f');
% formatIn = 'mm';
asmara_precipitation{1}=datenum(asmara_precipitation{1});
asmara_precipitation=cell2mat(asmara_precipitation); %% Month| H_Gh| SDm |SDd|SDastr |RR |RD |FF |DD
[MonthNum, MonthString] = month(asmara_precipitation(:,1));
p=find(average_day_radiation(:,1)<10);
q=find(diff(p)==1);
idx=[p average_day_radiation(p) average_day_radiation(p,2) average_day_radiation(p,4)];
consecutive_idx=[p(q) idx(q,2) idx(q,3) idx(q,4)];
% Graphic of bad radiation days
figure (44)
hold on
plotyy(MonthNum,asmara_precipitation(:,7),consecutive_idx(:,1),consecutive_idx(:,2))
datetick('x','mmm')
預先感謝您的任何幫助,並抱歉地問一些可能看起來很可笑。
我假設第一列'Month'不是支持的日期格式。你應該看看month()函數的在線文檔https://www.mathworks.com/help/finance/month.html#inputarg_F –
嘿,謝謝我已經解決了這個問題:)我應該在這裏發佈或只是刪除我的問題? –