首页 > matlab用contourf在地图(shp)上不能full fill?

matlab用contourf在地图(shp)上不能full fill?

问题如题,我的代码如下

[n]=xlsread('rp',1,'A2:A86');
[x]=xlsread('rp',1,'B2:B86');
[y]=xlsread('rp',1,'C2:C86');
[rain]=xlsread('rp',1,'G2:G86');
X=linspace(min(x),max(x),250);
Y=linspace(min(y),max(y),250);
[xi,yi]=meshgrid(X,Y);
zi=griddata(x,y,rain,xi,yi,'cubic');
S=shaperead('wq.shp');
mapshow(S);
hold on;
[c,h]=contourf(yi,xi,zi);
clabel(c,h);

shp的地图是这样子的:
我最后出来的效果是这样的:

所以这样看上去就很怪了,怎么才能使contourf的部分完美地和地图轮廓叠在一起呢,或者说是看上去这种效果?

【热门文章】
【热门文章】