How do separate plot into months?

10 views (last 30 days)
I have an array of 8760 numbers consisting of a data point for every hour of a year. Instead of having the x-axis separated by hours (1-8760), how can I change it to months?
Would creating a vairable for each month with the corresponding hours from the year and then combining all 12 plots work?

Accepted Answer

Sindar
Sindar on 4 Oct 2020
probably easiest would be to create a datetime object:
% sample data
data = rand(1,8760);
% starting year/month/day of data
Y = 2020;
M = 1;
D = 1;
% hours of data
H = 1:8760;
t = datetime(Y,M,D,H,0,0);
% plot your data, formating x-axis in month names
plot(t,data,'DatetimeTickFormat','MMMM')
% make sure every month gets a tick
xticks(datetime(Y,1:12,0))
% angle ticks for readability
xtickangle(45)

More Answers (0)

Categories

Find more on Formatting and Annotation 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!

Translated by