使用matlab绘制世界地图并根据经纬度绘制点位

使用matlab绘制世界地图有两种方法(自己使用过的,可能有别的我不了解的方法):第一种是worldmap和geoshow;第二种是利用m_map工具箱;下面分别介绍这两种方法。

1.worldmap & geoshow

worldmap和geoshow是matlab中绘图工具箱的两个绘图函数,直接调用即可。
worldmap的语法:

worldmap region          %region可以是单个大陆、国家、岛屿或地区的名称
worldmap(region)  
worldmap                 %直接输入该命令会得到一个包含所有可选区域的菜单
worldmap(latlim,lonlim)  %根据以度为单位的经纬度自定义需要展示的区域

geoshow的语法:

geoshow(lat,lon)  %使用存储在当前坐标轴中的投影来投影和显示经纬度向量lat和lon。
geoshow(S)        %以点、多点、线或多边形的形式显示存储在S中的向量的地理特征。

详细说明和示例参考官方文档:https://ww2.mathworks.cn/help/

绘制世界地图的matlab代码:

ax = worldmap('World');   %选择区域为‘世界’
setm(ax, 'Origin', [0 0 0]);  %设置坐标轴属性,[0,0,0]表示地图中心的经纬度高度
land = shaperead('landareas', 'UseGeoCoords', true); %导入陆地框架
geoshow(ax, land, 'FaceColor', [0.5 0.7 0.5]); %展示地图

运行结果如下:
在这里插入图片描述

2.m_map工具箱

m_map工具箱需要自行下载安装
链接:https://pan.baidu.com/s/14vGsZgX-K9w9v0ShU3WSig
提取码:2ubg
下载后解压,复制解压后的m_map1.4文件夹到MATLAB安装路径下的toolbox文件夹中,
例如我的toolbox路径为:D:\Program Files\MATLAB\R2018a\toolbox。
设置路径:打开matlab主页,点击‘设置路径’,添加toolbox下的m_map文件夹;
更新工具箱:打开主页中的预设,进入常规,更新工具箱路径缓存,确定;
测试工具箱:在命令行窗口输入help m_map,如果出现M_Map版本、功能介绍等信息,就说明安装成功了。
使用m_map绘制世界地图:

m_proj('robinson','long',[-180 180],'lat',[-90 90]);
m_coast('patch',[.7 1 .7],'edgecolor','none'); % 海岸填充
m_grid('box','fancy','linestyle','-','gridcolor','w','backcolor',[.2 .65 1]); % 边框属性

m_map参考文档中对每个函数的使用有详细的解释,建议看官方文档了解语法:
https://www.eoas.ubc.ca/~rich/mapug.html
运行结果如下:
在这里插入图片描述

3.根据经纬度在世界地图上绘制点位

使用worldmap和geoshow

%导入世界地图
ax = worldmap('World');   
setm(ax, 'Origin', [0 0]);
land = shaperead('landareas', 'UseGeoCoords', true); 
geoshow(ax, land, 'FaceColor', [0.5 0.7 0.5]);
%按照经纬度绘制点位
scatterm(lat,long,10,'filled')  %经纬度可以是单个点的,也可以是若干个点的
%plotm(lat,lon,'Marker','.')   %使用scatterm和plotm均可绘制点位

运行结果如下:
在这里插入图片描述
使用m_map:

m_plot(lon,lat,'.','color','m');
m_proj('robinson','long',[-180 180],'lat',[-90 90]);
m_coast('patch',[.7 1 .7],'edgecolor','none'); % 海岸填充
m_grid('box','fancy','linestyle','-','gridcolor','w','backcolor',[.2 .65 1]); % 边框属性

运行结果如下:
在这里插入图片描述
个人原创,仅供参考,转载请注明原文出处!

猜你喜欢

转载自blog.csdn.net/zxdd2018/article/details/88824841