I have shapefile for Indian region. Actually, I want to extract Indian region data through this shapefile froml data. Please help me for doing this.
Prashant Kumar answered .
2025-11-20
YOu need to read about inpolygon. This function helps you to extract what you want.
shapefile = 'India_Shapefile\ind_state_2000.shp' ;
S = load('global_data.mat') ;
C = shaperead(shapefile) ;
N = length(C) ;
lon = S.lon ; lat = S.lat ;
P = S.prc ;
[X,Y] = meshgrid(lon,lat) ;
iwant = cell(N,2) ;
for i =1:N
Cx = C(i).X ; Cy = C(i).Y ;
idx = inpolygon(X(:),Y(:),Cx',Cy') ;
P1 = P(:,:,1)' ;
iwant{i,1} = P1(idx) ;
P2 = P(:,:,2)' ;
iwant{i,2} = P2(idx) ;
end