how to convert hours to 'yyyy-MM-dd hh:mm:ss' format?

39 views (last 30 days)
I have time in hours from 0-72 hours (i.e. 0, 1, 2, 3,..., 72). i.e. a = 0:72;
I would like to convert this hours into datestr with 'yyyy-MM-dd hh:mm:ss' format.
I know initial yyyy-MM-dd i.e. 2012-04-24.
So how can i set my output in 'yyyy-MM-dd hh:mm:ss' format?
I want o/p to be like;
2012-04-24 00:00:00, 2012-04-24 01:00:00, ...., 2012-04-25 00:00:00, 2012-04-25 01:00:00, ...., 2012-04-26 00:00:00, 2012-04-26 01:00:00
date should change with each 24 hours.
Any help will be greatly appriciated.

Accepted Answer

Stephen23
Stephen23 on 15 Jul 2022
dtm = datetime(2012,4,24,'Format','yyyy-MM-dd HH:mm:ss') + hours(0:72).'
dtm = 73×1 datetime array
2012-04-24 00:00:00 2012-04-24 01:00:00 2012-04-24 02:00:00 2012-04-24 03:00:00 2012-04-24 04:00:00 2012-04-24 05:00:00 2012-04-24 06:00:00 2012-04-24 07:00:00 2012-04-24 08:00:00 2012-04-24 09:00:00 2012-04-24 10:00:00 2012-04-24 11:00:00 2012-04-24 12:00:00 2012-04-24 13:00:00 2012-04-24 14:00:00 2012-04-24 15:00:00 2012-04-24 16:00:00 2012-04-24 17:00:00 2012-04-24 18:00:00 2012-04-24 19:00:00 2012-04-24 20:00:00 2012-04-24 21:00:00 2012-04-24 22:00:00 2012-04-24 23:00:00 2012-04-25 00:00:00 2012-04-25 01:00:00 2012-04-25 02:00:00 2012-04-25 03:00:00 2012-04-25 04:00:00 2012-04-25 05:00:00
  4 Comments
Steven Lord
Steven Lord on 15 Jul 2022
I want to put xticklabels.
If you're plotting using this datetime data as one of the inputs in your call to plot, the tick labels will automatically be generated from the plotted datetime array. You don't need to convert to a string array in this case.
v = 0:10;
x = datetime('today') + days(v);
y = v.^2;
plot(x, y)

Sign in to comment.

More Answers (1)

MP
MP on 15 Jul 2022
Yes, that did a great help.... :)
Thank you so much @Stephen23

Categories

Find more on Dates and Time 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!