Converting time data to plot
15 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I imported an excel file (xlsread) and the time data turned into decimal form. I wrote the following code get a what I think is called a character array of just times.
um_time = num(:,1);
theDate = char(datetime(num_time,'ConvertFrom','excel')); % or 'excel1904'
theTimes = theDate(:,end-7:end);
The output for theTimes variable looks like this
val =
19:17:10
19:17:10
19:17:10
19:17:10
....
The problem that I have is that I can't use the variable theTimes in a plot function.
How can I turn theTimes values into a column vector of values that I can use to plot?
0 commentaires
Réponses (1)
Adam Danz
le 10 Sep 2019
Modifié(e) : Adam Danz
le 16 Sep 2019
After you convert to datetime, keep it in datetime format. There's no need to convert it to char.
From r2016b onward, you can use datetime objects in plot().
datetime(num_time,'ConvertFrom','excel')
Here's several of examples
[addendum]
If you're reading the dates in from excel you can read them in as datetime.
m = readmatrix('Dates.xlsx','OutputType','datetime');
2 commentaires
Adam Danz
le 12 Sep 2019
Modifié(e) : Adam Danz
le 13 Sep 2019
I just updated my answer to add another approach similar to yours.
If you're going to use readtable(), you could use the DateTimeType name-value input instead of doing the conversion in your comment above.
Voir également
Catégories
En savoir plus sur Logical 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!