Repeating time values on x-axis
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi there,
I have a table that contains a first column with time of the day and a second with the power of a machine. I would like to plot the power on the y-axis and the time on the x-axis for a week.
When I use the command plot(time,power) I get this:
The graphs overlap, as the times repeats itself for each day. I don't want that. I dont want to use the xtick method to solve this, as it would require me to specify each xticklabel right? That would take too long. Rather, I'd like the graph to produce the xticks automatically and plot in such a way that the graphs for each day are lined up after each other.
I also have a column with the dates, I just don't know how to put that all together in the correct way for it to plot it the way I want.
Can you help?
Thank you!
14 Kommentare
dpb
am 30 Nov. 2021
The other markedly different alternative would be to catenate the two variables as text and then scan them as a composite datetime...
dt=datetime(strcat(T(C:B,1),T(C:B,2)),'InputFormat','yyyyMMddhhmm');
which may well be the shortest, best way in the end.
NB: the above input format string will require the times all have double-digit hours, not single. The one-letter form of 'h' format string only works if the hour and minute fields are separated with the colon or other punctuation; it's simply too ambiguous a format without that indicator.
dpb
am 30 Nov. 2021
"... convert text to datetime ... then immediately call timeof day on that."
Ah! I don't recall having come across that suggestion before, Peter, but it's a good one. I didn't even think of timeofday ...
Antworten (0)
Siehe auch
Kategorien
Mehr zu Whos finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!