# Using interp2 with pcolor and loop.

1 view (last 30 days)
Ross O'Connell on 24 Jul 2019
Answered: SaiDileep Kola on 31 Jul 2019
Hi all.
I have the script created below for mapping wind speeds off the Irish coast. I am trying to use interp2 to use a finer grid but it will not work for me so I must be putting it in the wrong place. Does anyone have any suggestions on how and where in the script interp2 should be integrated?
Thank you.
%%%% SCRIPT %%%%%
% create a cartesian grid in 2-D space using longitude and latitude
[X,Y] = meshgrid(long,lat);
[X_ERA5,Y_ERA5] = meshgrid(lon_ERA5,lat_ERA5);
for i = 1:72
for j = 1:88
lat_pixel = Y(i,j);
lon_pixel = X(i,j)+360;
diffLat = abs(lat_ERA5-lat_pixel);
diffLon = abs(lon_ERA5-lon_pixel);
lat_index = find(diffLat==min(diffLat));
lon_index = find(diffLon==min(diffLon));
WinPwrMap (i,j) = wind_speed (lat_index,lon_index);
end
end
figure (1)
pcolor(X,Y,WinPwrMap);
sgtitle('Wind Power Resource off Irish Coast')
colorbar
xlabel ('Longitude')
ylabel ('Latitude')
colormap('jet')
c = colorbar;
c.Label.String = 'Wind Speed (m/s)';

#### 1 Comment

Jan on 24 Jul 2019
"it will not work for me" - please explain any details of the occurring problems. Post the code you have tried, and the corresponding error message.

SaiDileep Kola on 31 Jul 2019
I see that you have set of coordinates (X,Y) and (X_ERA5,Y_ERA5), you can use interp2 to get 2-D gridded
Vq = interp2(X,Y,V,Xq,Yq)
You may refer to the MATLAB documentation for interp2 and pcolor