griddata size and length mismatch error while they are the same length
Show older comments
I have this matrix that I need to interpolate, so I'm using griddata for that.
Nonetheless it keep giving me the following error:
Error using griddata (line 110)
The lengths of X and Y must match the size of Z.
The thing is I've checked all it and my "X" (yys1) and "Y"(zzs1) should be the rigth lengths for "Z"(AAA). yys1 is a 57x1 double, zzs1 is a 99x1 double, while AAA is a 57x99 double. XIT and ZIT are a new grid to which the values need to be interpolated, these are 1001x2002 double.
See the code I typed in the workspace below and the error it gives, I would appreciate any and all help ;)
>> griddata(yys1,zzs1,AAA,XIT,ZIT,'natural');
Error using griddata (line 110)
The lengths of X and Y must match the size of Z.
>> griddata(yys1,zzs1',AAA,XIT,ZIT,'natural');
Error using griddata (line 110)
The lengths of X and Y must match the size of Z.
>> griddata(yys1',zzs1,AAA,XIT,ZIT,'natural');
Error using griddata (line 110)
The lengths of X and Y must match the size of Z.
>> griddata(yys1',zzs1',AAA,XIT,ZIT,'natural');
Error using griddata (line 110)
The lengths of X and Y must match the size of Z.
>> length(yys1)
ans =
57
>> length(zzs1)
ans =
99
>> size(AAA)
ans =
57 99
Thus in otherwords I have no clue what I'm doing wrong, could someone please point out what mistake I'm making or why matlab is throwing this error?
Accepted Answer
More Answers (1)
darova
on 28 Feb 2020
Make yys1,zzs1,AAA the same size
[Y,Z] = meshgrid(yys1,zzs1);
AIT = griddata(Y,Z,AAA,XIT,ZIT,'natural');
Categories
Find more on MATLAB 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!