Problem with xlim when having date

8 vues (au cours des 30 derniers jours)
BN
BN le 17 Avr 2020
Commenté : BN le 17 Avr 2020
Dear all,
I have a problem with x-axis intervals. I would like to start the x-axis in 1989 and end in 2018; with 5 years intervals. Here what I've done so far, but it seems xlim not working in this case:
clf
startdate_A = datenum('01-01-1989','dd-mm-yyyy');
enddate_A = datenum('01-01-2016','dd-mm-yyyy');
dt_A = linspace(startdate_A,enddate_A,336);
startdate = datenum('01-01-1989','dd-mm-yyyy');
enddate = datenum('01-01-2018','dd-mm-yyyy');
dt = linspace(startdate,enddate,360);
plot(dt_A,DATA_A,'color','g')
datetick('x','yyyy','keepticks')
xlim([startdate:5:enddate])
hold on
plot(dt,DATA_B,'color','b')
datetick('x','yyyy','keepticks')
Here is the error:
Error using xlim (line 31)
Limits must be a 2-element vector of increasing numeric values.
Thank you so much

Réponse acceptée

Peter O
Peter O le 17 Avr 2020
Hi Behzad,
xlim sets the absolute max and min of the graph that you're looking at. To set the interval for grid lines, use the xticks command.
For your needs, use this with the datetick command:
% Define specific five year spacing of ticks for the 27 years of interest
xtks = linspace(startdate_A,enddate_A,27);
plot(dt_A, DATA_A);
xticks(xtks); % Set ticks for axis
xlim([startdate_A,enddate_A]) % Set limits
datetick('x','yyyy','keepticks');
grid on
  1 commentaire
BN
BN le 17 Avr 2020
Dear Peter,
Thank you so much.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by