Clear Filters
Clear Filters

How to do matrix regridding in matlab

11 views (last 30 days)
Anne
Anne on 4 Apr 2018
Commented: xinyu dong on 19 Jul 2019
Hello, I am trying to use matlab to regrid a dataset. The original dataset is 128x193x12 (longitude x latitude x time) and I want to regrid it to a 180x193x12 matrix. I have the latitude of the original dataset as a 64x1 single (Dust_Data_lat), the longitude as a 128x1 single (Dust_Data_lon). For the 'final' grid (180x193x12), I have a latitude matrix 180x193 (constant columns, DUST_IN_lat) and a longitude matrix 180x193 (constant rows, DUST_IN_lon). I think the function griddata is best for this as the grid is irregular. If I try however, it complains about 'Z', which I don't know, see here for the first time dimension of the data:
a=Dust_LGM(:,:,1);
data_regridded = griddata(Dust_Data_lon,Dust_Data_lat,a,DUST_IN_lon,DUST_IN_lat);
The error I get is:
Error using griddata (line 109)
The lengths of X and Y must match the size of Z.
Would you know where the mistake is?
  2 Comments
Matt J
Matt J on 4 Apr 2018
You should close your previous question by accept-clicking Jos' answer, since it appears you were happy with that answer. This will increase the likelihood of responses to future questions.
Anne
Anne on 5 Apr 2018
Ok, thanks for letting me know!

Sign in to comment.

Answers (1)

Matt J
Matt J on 6 Apr 2018
Edited: Matt J on 6 Apr 2018
In griddata(x,y,z,xq,yq) the input arrays x,y,z must have the same number of elements. You have 128*193=24704 elements in a. You must therefore have 24704 corresponding elements in both Dust_Data_lon and Dust_Data_lat.
  15 Comments
Anne
Anne on 22 Sep 2018
Hey Yoichi, thank you for your suggestion. This post is already very old, and I learned CDO and NCO to handle netcdf data in a more efficient way. I can recommend them to anyone that has to analyze/regrid/handle a lot of netcdf files:)
xinyu dong
xinyu dong on 19 Jul 2019
Hey Anne. I am struggling how to regrid with lon and lat right now. Do you have any recommandation? Thank you very much!

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!