Matlab 导入shp文件 并作为地图的底图输出

Map = shaperead('Tailand_n.shp') ;
geoshow(Map,'FaceColor',[0.5,1.0,0.5],'facealpha',0.0, 'EdgeColor','black');%把地图画出来

%geoshow函数:geoshow是用来显示地图数据的函数
geoshow的常用方法:
geoshow(lat,lon)直接输入经纬度,将以该经纬度为中心,生成一小片地图
geoshow(filename)直接输入地图文件名,生成该地图
geoshow(_,Name,Value,)输入相关属性并设定参数,生成所需要的地图。
geoshow的常用属性:
facecolor:定义了地图表面的颜色,需要输入三个参数且均在0至1之间。如果不写此属性,则默认是黄色。
 'facealpha',0.0 透明度=0 空心
edgecolor:定义了边界的颜色,输入的三个参数值同上。也可以直接像上面代码中写的,直接写颜色:‘black’

% forest pattern
data=double(tc*100);
data(data==0)=nan; %-LY
[lon,lat]=meshgrid(rb(1,1)+(rb(2,1)-rb(1,1))/size(loss,2)/2:(rb(2,1)-rb(1,1))/size(loss,2):rb(2,1),...
                   rb(2,2)+(rb(1,2)-rb(2,2))/size(loss,1)/2:(rb(1,2)-rb(2,2))/size(loss,1):rb(1,2)); 

figure(1);
pcolor(lon,lat,data);
view([0 0 1]);

load liuyyy;%这里load时要添加的是mat格式的文件名称
colormap(liuyyy);

shading flat;
axis equal;
axis([97.2 101.9 14.9 20.6]);
caxis([0 100]);
set(gca,'box','on');
set(gca,'FontSize',13);
%title('Forest area of N. Thailand in 2000');

Map = shaperead('Tailand_n.shp') ;
geoshow(Map,'FaceColor',[0.5,1.0,0.5],'facealpha',0.0, 'EdgeColor','black');%把地图画出来

colorbar;

Result:

  • 9
    点赞
  • 79
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
MATLAB中,我们可以使用Geographic Information Systems (GIS)工具箱来定位.shp文件到.tif地图位置。下面是一个简单的步骤: 1. 首先,确保你已经安装了MATLAB中的GIS工具箱。你可以在MATLAB主界面的"添加-Ons"选项卡中查找并安装该工具箱。 2. 将.shp文件导入MATLAB中。你可以使用`shaperead`函数来读取.shp文件,该函数将.shp文件的数据读取为一个结构体数组。例如,如果你的.shp文件名为"myshapefile.shp",你可以使用以下代码导入: ```matlab shapeData = shaperead('myshapefile.shp'); ``` 3. 加载.tif地图数据。你可以使用`geotiffread`函数来读取.tif文件,该函数将.tif文件的数据读取为一个矩阵。例如,如果你的.tif文件名为"mytiffile.tif",你可以使用以下代码加载: ```matlab [tifData, R] = geotiffread('mytiffile.tif'); ``` 这里,`R`是地理参考对象,它包含了.tif文件的地理信息。 4. 定位.shp文件的位置到.tif地图中。你可以使用`geoshow`函数来在地图上显示.shp文件的几何图形。这里,你将.shp文件的几何图形投影到.tif地图的坐标系上。以下是显示.shp文件的示例代码: ```matlab figure; geoshow(tifData, R); hold on; geoshow(shapeData, 'FaceColor', 'red'); ``` 以上代码将在新窗口中显示.tif地图,并在地图上用红色显示.shp文件的几何图形。 通过以上步骤,你将能够使用MATLAB定位.shp文件的位置到.tif地图中,并在地图上以可视化方式显示.shp文件的几何图形。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Leon_124

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值