Using interp2 with pcolor and loop.

2 views (last 30 days)
Ross O'Connell
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 %%%%%
long = ncread(ncfile,'longitude');
lat = ncread(ncfile,'latitude');
% 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);
shading interp;
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
Jan on 24 Jul 2019
Edited: 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.

Sign in to comment.

Answers (1)

SaiDileep Kola
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

Categories

Find more on Geographic Plots 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!