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 度。要在地理坐标区或地理图中的地图上进行放大和缩小,您可以使用鼠标滚轮、触控板或键盘上的
加号
和
减
号
键。
您还可以使用坐标区工具栏来放大、缩小或恢复地图的原始视图。将光标移到地图上时,将显示坐标区工具栏。将光标从地图上移开时,坐标区工具栏随即消失。