datetick gives me errors

조회 수: 4 (최근 30일)
Scott Naucler
Scott Naucler 2019년 8월 6일
답변: Star Strider 2019년 8월 6일
I have a lot of experience in data crunching, but I am fairly new to MatLab. I am able to currently plot data, but when I try to display the x-axis values in hours:minutes (or any time format for that matter), a get an error. I know I am missing something silly, but I have searched the help files without luck for the last hour. Here is my code, with error.
>> figure
>> hold
Current plot held
>> plot(x,M01_80T)
>> datetick('x',13)
Error using datevecmx
The datevecmx function only accepts double arrays.
Error in datevec (line 309)
[y,mo,d] = datevecmx(t);
Error in dateTickPicker (line 85)
[y,m,d] = datevec(x);
Error in datetick>bestscale (line 307)
[labels,format] = dateTickPicker(axh,[xmin,xmax],dateform,dateChoice,axVal);
Error in datetick (line 260)
ticks = bestscale(axh,ax,vmin,vmax,dateform,dateChoice);

답변 (2개)

dpb
dpb 2019년 8월 6일
You don't show definition of X, but datetick works only for axes drawn with datenum which is a double.
But, datenum is old and deprecated and datetick is klunky at best...use the new datetime class instead and plot() is already datetime aware so don't need datetick at all.

Star Strider
Star Strider 2019년 8월 6일
From the datetick documentation:
‘The axis data values should be serial date numbers, as returned by the datenum function.’
See datenum for details.
Another option would be to use datetime arrays (R2014b and later).

카테고리

Help CenterFile Exchange에서 Title에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

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

Start Hunting!

Translated by