Adding datenum to plots

27 views (last 30 days)
David du Preez
David du Preez on 12 May 2017
Answered: Peter Perkins on 12 May 2017
Hi. I have 2924 x 2 matrix. In column 1 is the daily datenum value from 2007-2016. These in are not necessarily continues as some data points have been removed. In column 2 is the data. I want to plot the data and indicate the years on the x-axis. I have tried this but it doens't work.
plot(data(1:2924,2))
datetick('x',11)

Accepted Answer

KSSV
KSSV on 12 May 2017
% make some random data
startDate = datenum('02-01-1962');
endDate = datenum('11-15-2012');
x = datenum(linspace(startDate,endDate,50));
y = rand(1,50) ;
data = [x' y'] ;
figure
plot(data(:,1),data(:,2))
datetick('x','yyyy','keeplimits')

More Answers (1)

Peter Perkins
Peter Perkins on 12 May 2017
In MATLAB R2014b or later (and especially in R2016b or later), consider using datetimes, not datenums.
startDate = datetime('01-Feb-1962');
endDate = datetime('15-Nov-2012');
x = linspace(startDate,endDate,50);
y = rand(1,50);
plot(x,y)
This figure automatically updates the ticks as you pan and zoom.

Categories

Find more on Dates and Time in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!