xlim not working with datenum??
5 次查看(过去 30 天)
显示 更早的评论
Hi there, I'm trying to set the limits of an x-axis of dates produced in a function. I have two inputs to the function, 'startdate' and 'enddate' which are entered in yyyymmdd format. i have tried the following code to limit the x-axis:
starty = floor(startdate/10000);
startm = floor(rem(startdate,10000)/100);
startd = rem(startdate,100);
xmin=datenum(datetime(starty,startm,startd));
endy = floor(enddate/10000);
endm = floor(rem(enddate,10000)/100);
endd = rem(enddate,100);
xmax=datenum(datetime(endy,endm,endd));
xlim([xmin xmax]);
but i just can't figure out why it doesn't work?? i get no error messages it just doesn't work? i have queried the x limits of the graph produced and get the following:
>> xlim
ans =
1.0e+05 *
7.2592 7.3542
thanks for any help in advance
0 个评论
回答(2 个)
Titus Edelhofer
2016-2-25
Hi Aaron,
here is an example how it works:
% three years:
t = datenum(2012, 1:36, 1)';
plot(t, rand(size(t)))
% makes it easier to read:
datetick x
% let's wait
pause(5);
% and "zoom" in:
xlim([datenum(2013, 1,1), datenum(2014,1,1)])
Titus
0 个评论
Titus Edelhofer
2016-2-23
Hi,
I'm not yet sure what is the problem. You limit the X-axis to the following date range:
>> datestr(1e5 * [7.2592 7.3542])
ans =
02-Jul-1987
05-Jul-2013
So what is it that is not working?
Titus
3 个评论
Walter Roberson
2016-2-23
It is not clear at which point you do the xlim. You need to use it after you plot, or you need to set hold on after you xlim if you want to plot after you set xlim
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dates and Time 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!