do not figure out errors in xlim

3 views (last 30 days)
z1=datenum(T.Date(1,:))
z2=datenum(T.Date(height(T.Date),:))
xlim([z1 z2])
Error using xlim (line 31)
Limits must be a 2-element vector of increasing datetime values
I am not sure of the error because z1 and z2 returns values and z1 <z2. Please advise.
  2 Comments
Matt J
Matt J on 30 Jul 2021
Edited: Matt J on 30 Jul 2021
Please run your code within the post and demonstrate that z1 and z2 are legitimate.
Yazan
Yazan on 30 Jul 2021
Edited: Yazan on 31 Jul 2021
Are you sure z1 and z2 are of size 1x1 (i.e., z1 and z2 are scalars)?

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 30 Jul 2021
z2 is the last entry from z1. The last entry from an array cannot be strictly greater than the array: it is guaranteed to equal one entry of the array.
Therefore, z1<z2 is not strictly true.
Furthermore because z1 includes z2, if z1 has more than one entry then [z1 z2] would be at least 3 elements if z1 is a row vector, and an error if z1 is a column vector. We can tell from your indexing that if z1 is nonscalar then z1 would be a column vector.
The only way you can reach the xlim is if z1 is scalar and is exactly the same as z2, which would fail the requirements that the values must be increasing.
  3 Comments
Walter Roberson
Walter Roberson on 1 Aug 2021
You are using datenum (numeric) limits on a plot that used datetime (oop object) values.

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!