Increasing the X axis precision while using times
9 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hello, I am trying to plot a graph that takes place over a set of times from 00:00 on one day to 18:00 the next day. My code is:
r8s = readmatrix('hhh.csv');
start = datenum('00:00')
finish = datenum('18:37')
x = linspace(start, finish, 2558);
figure(1)
plot(x, (r8s(:,9) - r8s(:,4)))
yline(0)
dateformat=15
datetick('x', dateformat)
grid on
xlabel('Time UTC')
Which gives the times in three-hour increments. I would like them in 15 minute increments if possible, but have no idea how to achieve this, and trying to manually manipulate the Xticks has not worked for me. Any ideas would be appreciated.
0 Commenti
Risposta accettata
Adam Danz
il 4 Feb 2021
Modificato: Adam Danz
il 4 Feb 2021
Give this a shot.
I've added/changed 3 lines (see comments) and removed two lines.
Avoid using datenum and use datetime instead.
r8s = readmatrix('hhh.csv');
start = datetime('00:00','format', 'HH:mm'); % Use datetime
finish = datetime('18:37','format','HH:mm'); % Use datetime
x = linspace(start, finish, 2558);
figure(1)
plot(x, (r8s(:,9) - r8s(:,4)))
yline(0)
grid on
xlabel('Time UTC')
set(gca, 'xtick', start : minutes(15):finish) % set ticks at 15 min intervals
But that's going to give you 75 ticks! So you might need to increase the interval or rotate the ticks: xtickangle(90).
3 Commenti
Steven Lord
il 4 Feb 2021
Rather than using linspace to create x, I'd use colon. I'll use a smaller interval so I can actually show the result.
start = datetime('00:00', 'Format', 'HH:mm');
finish = datetime('01:37', 'Format', 'HH:mm');
x = start:minutes(15):finish
There is one "gotcha" here in that the last element of x is not equal to finish. But is that desirable if finish is not exactly a multiple of the interval away from start?
if x(end) ~= finish
x(end+1) = finish;
end
disp(x)
plot(x, (1:numel(x)).^2, 'o-')
And if you don't need the date part of the datetime use a duration array instead.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Dates and Time in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
