Day of year to month
Ältere Kommentare anzeigen
I have a years worth of data in the form of 1-365 (in a column of my matrix), and I want to change it to the days in a month, so I can plot a graph that is quicker to read, rather than having to work out, what month day 100 etc.. belongs to.
I'm sure it's really easy to do but I'm completely out of my depth.
Antworten (5)
Andreas Goser
am 9 Feb. 2011
I am not 100% sure, but maybe this example helps you
d2011=734504; % 734504 ist the first day of 2011 - example
v=d2011:d2011+100; % create a vector of 100 days
datestr(v) % see all the dates as strings - use for the figure
datevec(v) % can extract day of month
Claire
am 9 Feb. 2011
0 Stimmen
4 Kommentare
Brett Shoelson
am 9 Feb. 2011
Can you show us the form of your data?
Doug Hull
am 9 Feb. 2011
This is not an answer to the question, please post comments or modify your question.
Jan
am 9 Feb. 2011
Please show us the code and the error messages.
Claire
am 9 Feb. 2011
Brett Shoelson
am 9 Feb. 2011
If you have 365 days, for instance, but no month information, you can simply increment the DAY position in datenum:
mydates = datenum(2011,1,1:365,h,m,s);
Or, if you want the y,m,d,h,m,s:
[y,m,d,h,m,s] = datevec(datenum(2011,1,1:365,h,m,s))
Cheers,
Brett
3 Kommentare
Claire
am 9 Feb. 2011
Brett Shoelson
am 9 Feb. 2011
The answer doesn't change; you can specify the hour in the variable h.
Brett
Claire
am 10 Feb. 2011
Brett Shoelson
am 10 Feb. 2011
How about this?
D = datevec(datenum(1992,1,1:1/24:365, 0,0,0));
Cheers,
Brett
1 Kommentar
Claire
am 10 Feb. 2011
Walter Roberson
am 10 Feb. 2011
0 Stimmen
I suspect you can skip all of this trouble and use datetick()
2 Kommentare
Claire
am 10 Feb. 2011
Walter Roberson
am 10 Feb. 2011
http://www.mathworks.com/help/techdoc/ref/datetick.html
datetick('x','mmm HH')
Kategorien
Mehr zu Dates and Time 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!