用Matlab将坐标添加到地图上

                                 用Matlab将坐标添加到地图上

今年本科组全国大学生数学建模国赛我没有参加,闲着无聊帮助研究生学姐做竞赛,她让我用matlab将坐标添加到地图上。我的思路是:先画个地图(地图可以是matlab自带的函数coast或者是导入一张地图图片)然后添加坐标信息。

以下是我给了三种作图方式,从简单到难,仅供参考。

源码数据下载地址:点击文字

小编邮箱:2377389590@qq.com

代码1:

clear all;
close all;
clc;
%author:猪猪侠
%date:2018-09-15
load coast;
[Num,Txt,Raw]=xlsread('data1.xlsx')  %经纬度数据
axesm mercator
plotm(lat,long,'k-');
hold on
plotm(Num(:,1),Num(:,2),'r.')

代码2

%author:猪猪侠
%date:2018-09-15
clc;
clear all; 
close all;
[Num,Txt,Raw]=xlsread('data1.xlsx');%文件存储地址
hold on
axesm('MapProjection','miller','Grid','on');
load coast;%加载海岸线
plotm(lat,long,'k-');%绘制地图海岸线
set(gcf,'Position',[100,10,450,250]);
set(gcf,'PaperPositionMode','auto');
mlabel('MLabelLocation',60);%标上经度刻度标签,每隔60度
plabel('PLabelLocation',30);%标上纬度刻度标签,每隔30度
setm(gca,'MLabelParallel','south');%将经度刻度标签放在南方,即下部
set(gca, 'xlim', [-4 4]);%设置画布大小的横长
set(gca, 'ylim', [-2.5 2.5]);%设置画布大小纵长
plotm(Num(:,1),Num(:,2),'r.')

代码3:

clc
clear
%author:猪猪侠
%date:2018-09-15
[Num,Txt,Raw]=xlsread('data1.xlsx');%导入坐标点信息
ax = worldmap('World');%世界地图
setm(ax, 'Origin', [0 180 0]) %设置地图的中心位置和绕中心点和地心点的轴旋转角度[latitude longitude orientation]
land = shaperead('landareas', 'UseGeoCoords', true);%加载陆地信息
geoshow(ax, land, 'FaceColor', [0.5 0.7 0])%显示陆地,颜色为 [R,G B]
lakes = shaperead('worldlakes', 'UseGeoCoords', true); %加载湖泊信息
geoshow(lakes, 'FaceColor', 'blue') %显示湖泊颜色blue
rivers = shaperead('worldrivers', 'UseGeoCoords', true); %加载河流信息
geoshow(rivers, 'Color', 'b')  %显示江河,颜色为blue
% setm(gca,'MLabelParallel','south');%将经度刻度标签放在南方,即下部  
hold on
plotm(Num(:,1),Num(:,2),'r.')

 

 


 

  • 25
    点赞
  • 135
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 24
    评论
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

好玩的Matlab(NCEPU)

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

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

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

打赏作者

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

抵扣说明:

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

余额充值