365 day loop for 59 years
Ältere Kommentare anzeigen
Hi there,
This is a beginner question, I'm very new to MATLAB.
I have 59 years worth of data in one column starting in October. There is 1 data point for every day in the year. I would like to create a loop which produces a graph for the data in every year for each of the 59 years.
Thanks,
SS.
4 Kommentare
Mathieu NOE
am 23 Feb. 2021
hello
maybe you should share the data file to let us help you
Cris LaPierre
am 23 Feb. 2021
Don't forget - every 4 years there are 366 days.
David Hill
am 23 Feb. 2021
Show us the code you currently have.
S.S
am 23 Feb. 2021
Antworten (1)
Cris LaPierre
am 23 Feb. 2021
Bearbeitet: Cris LaPierre
am 23 Feb. 2021
Here's a rought outline.
startY = min(year(data.Var1));
endY = max(year(data.Var1));
for y = startY:endY
ind = year(data.Var1)==y;
plot(day(data.Var1(ind),'dayofyear'),data.Var2(ind))
hold on
end
hold off
3 Kommentare
Cris LaPierre
am 23 Feb. 2021
Bearbeitet: Cris LaPierre
am 23 Feb. 2021
This solution will work for your data. You just have to load your spreadsheet into MATLAB. I'd use readtable.
data = readtable("data .xlsx",'Sheet','Sheet2')
S.S
am 23 Feb. 2021
Just combine the two. That's all you need. The readtable function will automatically handle the date for you. This was run in R2020b.
data = readtable("SSdata .xlsx",'Sheet','Sheet2') % I saved your file with this name
startY = min(year(data.Var1));
endY = max(year(data.Var1));
for y = startY:endY
ind = year(data.Var1)==y;
plot(day(data.Var1(ind),'dayofyear'),data.Var2(ind))
hold on
end
hold off
Kategorien
Mehr zu Tables finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
