MATLAB: Change interval for xtick label

axeslabel;plot

Consider the following example:
clear all
x = (0:23).';
n = numel(x);
time = cellstr(datestr([ones(n,1)*[2012 3 10] x zeros(n,2)],'HH:MM'));
Data = rand(1,24);
plot(x,Data);
set(gca,'XTick',0:23);
set(gca,'XTickLabel',time);
Here, I can plot the change in a certain variable as a function of time (in hours). Is there a method for only showing every other hour in the x axis i.e. still show all of the data but with the ticks showing 00:00 02:00 04:00…etc.
I have tried:
set(gca,'XTick',0:2:23);
but to no avail. Any advice would be appreciated.

Best Answer

Hi, you have to do the same thing for xticklabel
set(gca,'Xtick',0:3:23)
set(gca,'XtickLabel',time(1:3:end))