plot time in HH:MM ix x axis
35 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi, I have 16000 sampled data. I want to plot it vs time in HH:mm format (ex 15:33)
I know when the first data point was taken (12:33:00) and I sampled 1 per 10 seconds.
I cant figure out how to do this
0 commentaires
Réponse acceptée
Ankit
le 24 Jan 2022
You need to change the format using datetick.
date={'15:10:34.600 AM 2/26/2017','15:20:34.700 AM 2/26/2017','15:30:34.800 AM 2/26/2017','15:40:34.900 AM 2/26/2017'};
timeFormat='HH:MM:SS.FFF AM mm/dd/yyyy';
xdatenum=datenum(date,timeFormat);
data=0:3;
plot(xdatenum,data,'*');
datetick('x','HH:MM');
6 commentaires
Steven Lord
le 24 Jan 2022
Instead of using a datetime, which requires date information, I'd use a duration array to plot this data.
t = duration(15, 33, 1:100:5000);
x = randn(50, 1);
plot(t, x)
xlim(t([1 end]))
Change the Format of the duration array to change how it is displayed as labels.
t = duration(15, 33, 1:100:5000, 'Format', 'hh:mm'); % no second data
x = randn(50, 1);
plot(t, x)
xlim(t([1 end]))
Ankit
le 24 Jan 2022
@Steven Lord thanks for your suggestion. now I know one more way to achieve this :)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!