登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 dmjdmj11 于 2013-11-4 17:12 编辑
----------------------------------------------------------------------------------------------------------------------------------------------
Objective: 显示中国地区海拔>1000m的区域 Step 1. 首先将地形数据data读入matlab; Step 2. 获得数据文件的属性赋给变量a,再输入a.SpatialRef; Step 3. 其次程序代码如下: lat=max(a.SpatialRef.Latlim)+a.SpatialRef.DeltaLat/2:a.SpatialRef.DeltaLat:min(a.SpatialRef.Latlim)-a.SpatialRef.DeltaLat/2; lon=min(a.SpatialRef.Lonlim)+a.SpatialRef.DeltaLon/2:a.SpatialRef.DeltaLon:max(a.SpatialRef.Lonlim)-a.SpatialRef.DeltaLon/2; image(lon,lat,double(data/100)); %地形数据单位为m,给数据除以100 axis xy colormap(jet(90)); %90是因为海拔高度最高高度超不过9000m,除以100后为90,即为90个色阶 colormap1=ones(90,3)./2; %生成一个90行3列的颜色矩阵(=0.5(灰色))赋给colormap1 colormap1(1:10,1:3)=1; %从第一行到第五行定义为白色,代表海拔高度<1000m的范围 colormap(colormap1) %用colormap1矩阵映射当前图形的色图 load china hold on; axis([73 135 18 54]); %中国区域 hold on;plot(bou2_4x,bou2_4y,'k','LineWidth',2.3); %画出中国边界 Step 4. 其余坐标轴参数可自行调整。最终大致可得结果如下图:海拔>1000m的区域由灰色显示,其余区域由白色显示。
|