Loop plotting for individual years
4 views (last 30 days)
Show older comments
I am trying to plot the average ice concentration on y axis and the date from december 1 st to 30 of march for each year. (10 individual plots for each year ) I donot know how to do, I assume I wil need to use a loop to start from 2011 to 2011. I would want the plots to show the gaps of the missing dates. where on x axis dates from 1st of december to 30 march for each year and y axis the avaiable average ice concentrations for each year period. The code is as below . Any recommendation or help will be appreciated.
T1 = readtable("Ice concentration data.csv")
T1.DateTime
VN = T1.Properties.VariableNames;
lgdstr = cellfun(@(x)strrep(x,'_','\_'), VN(2:end), 'Unif',0)
figure
plot(T1.DateTime, T1{:,2:end})
grid
legend(lgdstr, 'Location','best')
2 Comments
Accepted Answer
Davide Masiello
on 8 Nov 2022
There's no legend in the example below, because I am not sure what you wanted to do with the cellfun function.
Nevertheless, it should help.
T1 = readtable("Ice concentration data.csv");
allyears = unique(year(T1.DateTime));
for yrs = 1:length(allyears)
idx = year(T1.DateTime)==allyears(yrs);
figure(yrs)
plot(T1.DateTime(idx), T1{idx,2:end})
grid on
end
0 Comments
More Answers (1)
Walter Roberson
on 8 Nov 2022
g = findgroups(ymd(T1.DateTime));
Now you can splitapply() some plotting code on elements of your table using groupping variable g
0 Comments
See Also
Categories
Find more on Geographic Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!