hi,i have a problem to fix xticks in 2d plot.
i have a time series from 1990,01 up to 2020,03;when i plot my data ,the xaxis is full of date,how i could specify the date will be shown in x axis.
appreciate in advance

 Akzeptierte Antwort

Rik
Rik am 15 Mai 2020

1 Stimme

datetick seems a good place to start. Otherwise you can see if the xtickformat function suits your need.

3 Kommentare

masoumeh solgi
masoumeh solgi am 15 Mai 2020
y=gyields(:,1)
startDate = datenum('01-1990')
endDate = datenum('01-2019');
xData = linspace(startDate,endDate,360)
plot(xData,y);
ax = gca;
ax.XTick = xData;
datetick('x','yyyy')
these are my code,but i have this error
"Error using matlab.graphics.axis.decorator.DatetimeRuler/validateTicks
Value must be a vector of increasing datetime values.
Error in matlab.graphics.axis.decorator.DatetimeRuler/setTicksDelegate"
Rik
Rik am 15 Mai 2020
The datenum values that are generated by your code didn't match what I expected, so I edited it a bit. The code below runs without errors or warnings.
S=load('example.mat');y=S.y;
startDate = datenum('01-01-1990');
endDate = datenum('01-01-2019');
xData = linspace(startDate,endDate,360);
plot(xData,y);
set(gca,'XTick',xData);
datetick('x','yyyy')
masoumeh solgi
masoumeh solgi am 15 Mai 2020
thx so much ,it works

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by