How to set the axis to display hours?

2 vues (au cours des 30 derniers jours)
ccs
ccs le 26 Fév 2015
Commenté : ccs le 27 Fév 2015
How can I make the datetick count from 00:00 to 23:59. This below is dispalying 00:00 for every hour.
d= datetime(start_date):1/24:datetime(end_date)+1;
hours=hour(d);
scatter(hours,rand(size(d)));
t=datenum(d);
ax=gca;
ax.XTick=1:24;
datetick(ax,'x','HH:MM','keeplimits','keepticks')

Réponses (1)

Guillaume
Guillaume le 26 Fév 2015
The XTick values need to be date number for datetick to work, so maybe:
ax.XTick = ceil(ax.XLim(1)):1/24:floor(ax.XLim(2));
datetick(ax,'x','HH:MM','keeplimits','keepticks');
  5 commentaires
Guillaume
Guillaume le 27 Fév 2015
Yes, there was a typo, missing a bracket which you added in the wrong place. I've corrected my answer
ccs
ccs le 27 Fév 2015
>> d= datetime(start_date):1/24:datetime(end_date)+1;
>> hours=hour(d);
>> t=datenum(d);
>> scatter(hours,rand(size(d)));
>> ax=gca;
>> ax.XMinorTick='on';
>> ax.XTick = linspace(ceil(ax.XLim(1)), floor(ax.XLim(1)), 24);
While setting the 'XTick' property of Axes: Value must be a vector of type single or double whose values increase
Now it says the vector values aren't increasing. Sorry I can figure this out.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by