Datetick ne montrant pas assez de marques de graduation dans l'intrigue

J'ai un code (ci-dessous) qui les parcelles simple en x, y de données. De mon temps (axe des x) a été à l'origine de nombres de 1-1257 qui correspond au nombre de jours que je regardais. J'ai converti cette série de dates afin de parcelle. Toutefois, lorsqu'il est tracée dans MATLAB, il n'y a pas assez d'étiquettes sur l'axe des abscisses. Quand j'ai essayer de mettre plus de marques de graduation, soit je obtenir les étiquettes de retour en format série (je veux 'mmm yyyy"), ou quand j'essaie NumTicks, je reçois beaucoup d'étiquettes, mais ils se trompent, car ils sont tout simplement les étiquettes d'origine répété plusieurs fois.

% Find indexes at which the lat and lon match the conditions
lon_ind = find(X(:,1) == 224); % Longitude closest to  136 03.56W
lat_ind = find(Y(1,:) == -66.75); % Latitude closest to 66 39.67S

% Pull out all the data at the point 2240W and 66.75
data_point = data_All(lon_ind, lat_ind, :); 
t = 1:1257; % Days 1:1257 inclusive. 20100101 to 20130611
y = reshape(data_point,[],1); % Change data_point into a 1 column matrix 

x = datenum(2009, 12, 31) + t; % Convert t into serial numbers

% str = datestr(x, 'mmm yyyy'); % Choose format for x-axis
plot(x, y); % Plot data

datetick('x','mmm yyyy','keeplimits', 'keepticks'); % Set parameters

% NumTicks = 30;
% L = get(gca,'XLim');
% set(gca,'XTick',linspace(L(1),L(2),NumTicks))

set(gca,'XMinorTick','on','YMinorTick','on'); % Add minor ticks (without labels)

Comment puis-je faire en sorte de l'axe des x a plus d'étiquettes dans le " mmm aaaa format?

C'est l'un des plus grands MATLAB désagréments, qui se passe à chaque fois

OriginalL'auteur SugaKookie | 2013-06-24