365 day loop for 59 years
Afficher commentaires plus anciens
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 commentaires
Mathieu NOE
le 23 Fév 2021
hello
maybe you should share the data file to let us help you
Cris LaPierre
le 23 Fév 2021
Don't forget - every 4 years there are 366 days.
David Hill
le 23 Fév 2021
Show us the code you currently have.
S.S
le 23 Fév 2021
Réponses (1)
Cris LaPierre
le 23 Fév 2021
Modifié(e) : Cris LaPierre
le 23 Fév 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 commentaires
Cris LaPierre
le 23 Fév 2021
Modifié(e) : Cris LaPierre
le 23 Fév 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
le 23 Fév 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
Catégories
En savoir plus sur Tables dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
