xlim not working with datenum??
조회 수: 4 (최근 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!