matlab使用教程(54)—绘制地理图

1.使用纬度和经度数据创建地图

        如果您拥有与特定地理位置有关的数据,请使用地理坐标区或地理图,以在地图上可视化您的数据并提供视觉环境。例如,如果您拥有描述世界各地的海啸事件的数据,请在地理坐标区上绘制数据,并通过标记指示每个事件在地图上的位置。下面这些示例说明如何在地理坐标中创建线图、散点图、气泡图和密度图。

1.1 创建地理曲线图

        在地图上,在西雅图和安克雷奇之间绘制一条线。指定每个城市的纬度和经度,然后使用 geoplot 函数绘制数据。使用线条设定 '-*' 自定义线条外观。使用 geolimits 调整地图的纬度和经度范围。使用geobasemap 函数更改底图。
latSeattle = 47.62;
lonSeattle = -122.33;
latAnchorage = 61.20;
lonAnchorage = -149.9;
geoplot([latSeattle latAnchorage],[lonSeattle lonAnchorage],'-*')
geolimits([45 62],[-149 -123])
geobasemap streets

1.2 创建地理散点图

        创建经纬度位置,并定义每个点处的值。使用 geoscatter 函数在地图上绘制值。该示例指定三角形作为标记,以大小和颜色表示值的变化。
lon = (-170:10:170);
lat = 50 * cosd(3*lon);
A = 101 + 100*(sind(2*lon));
C = cosd(4*lon);
geoscatter(lat,lon,A,C,'^')

1.3 创建地理气泡图

        根据海啸数据创建表。将一个值定义为一个分类值。使用 geobubble 函数在地图上绘制数据。该示例使用气泡大小指示海啸波浪的高度,使用颜色指示海啸的成因。
tsunamis = readtable('tsunamis.xlsx');
tsunamis.Cause = categorical(tsunamis.Cause);
figure
gb = geobubble(tsunamis,'Latitude','Longitude', ...
'SizeVariable','MaxHeight','ColorVariable','Cause');
geolimits([10 65],[-180 -80])
title 'Tsunamis in North America';
gb.SizeLegendTitle = 'Maximum Height';
geobasemap colorterrain

1.4 创建地理密度图

        根据海啸数据创建表。使用 geodensityplot 函数绘制数据。
tsunamis = readtable('tsunamis.xlsx');
lat = tsunamis.Latitude;
lon = tsunamis.Longitude;
weights = tsunamis.MaxHeight;
geodensityplot(lat,lon,weights)
geolimits([41.2 61.4],[-148.6 -107.0])
geobasemap topographic

2.地理坐标区和地理图中的平移和缩放行为

        地理坐标区或地理图中的底图是实时的,也就是说,您可以平移底图以查看其他地理位置,或者在地图上进行放大和缩小以更详细地查看某些区域。当您平移和缩放时,地图会更新。在地理坐标区和地理图上,平移和缩放功能默认情况下处于启用状态。
        要平移地理坐标区或地理图中的底图,请使用箭头键,或者在地图上移动光标然后点击并拖动底图。可以在整个经度范围内横向连续平移地图。在纵向平移时,最多只能到南北纬 85 度。要在地理坐标区或地理图中的地图上进行放大和缩小,您可以使用鼠标滚轮、触控板或键盘上的 加号 键。
        您还可以使用坐标区工具栏来放大、缩小或恢复地图的原始视图。将光标移到地图上时,将显示坐标区工具栏。将光标从地图上移开时,坐标区工具栏随即消失。
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

配电网和matlab

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

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

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

打赏作者

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

抵扣说明:

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

余额充值