主要内容

用投影坐标参考系统中的数据创建地图

此示例说明如何导入和显示包含投影坐标参考系统中的坐标的地理数据。

特别地,这个例子说明了如何做到这一点

  • 导入特定的光栅和矢量数据集

  • 创建可视化数据的地图显示

  • 在地图显示中显示多个数据集

  • 在单一地图显示中显示地理坐标和投影坐标参考系统中的多个数据集

例1:在投影坐标参考系统中导入光栅数据

包含投影坐标参考系统中的坐标的地理光栅数据可以以各种不同的格式存储,包括标准文件格式,如GeoTIFF、空间数据传输标准(SDTS)、NetCDF、HDF4或HDF5。这个例子演示了从GeoTIFF文件导入数据。文件中的数据包含投影地图坐标参考系统中的坐标马萨诸塞州平面大陆区坐标系

GeoTIFF文件中图像的坐标,boston.tif,在投影坐标参考系统中。可以通过使用geotiffinfo功能和检查个人电脑而且投影字段值。

信息= geotiffinfo (“boston.tif”);disp (info.PCS)
NAD83 /马萨诸塞州大陆
disp (info.Projection)
马萨诸塞州大陆区(米)

函数定义坐标的长度单位UOMLength字段信息结构。

disp (info.UOMLength)
我们调查的脚

要导入图像和空间引用对象,使用readgeoraster

(波士顿,R) = readgeoraster (“boston.tif”);

例2:在投影坐标参考系统中显示光栅数据

你可以在一个常规的MATLAB坐标轴上显示图像mapshow,它显示图像,并将坐标轴限制设置为引用对象定义的限制,R。如上所述,坐标在我们调查的脚并且相对于地图西南的一个原点,这就是为什么数字很大的原因。区域内的坐标总是正的。

mapshow(波士顿,R)轴图像标题(“波士顿”

图中包含一个axes对象。标题为Boston的axes对象包含一个类型为image的对象。

例3:在投影坐标参考系统中导入矢量数据

包含投影坐标参考系统中的坐标的地理矢量数据可以存储在shapefile中。这个例子演示了如何从shapefile导入投影坐标参考系统中的矢量数据,boston_roads.shp

控件中导入矢量线数据boston_roads.shp文件作为地理空间表。

道路= readgeotable (“boston_roads.shp”);

形状变量包含关于线形的信息。查询形状的投影坐标参考系。

roads.Shape.ProjectedCRS
名称:"NAD83 / Massachusetts Mainland"地理crs: [1×1 geocrs] ProjectionMethod: "Lambert Conic Conformal (2SP)"LengthUnit: "meter" ProjectionParameters: [1×1 map.crs.ProjectionParameters]

例4:投影坐标参考系统中矢量和光栅数据的显示

本例中的矢量和光栅数据位于同一个投影坐标参考系统中。然而,矢量数据的长度单位是米,而光栅数据的长度单位是测量英尺。将栅格数据转换为米的长度单位,并在相同的轴上显示数据。

将栅格图像的坐标从美国测量单位英尺转换为米。

R.XWorldLimits = R.XWorldLimits * unitsratio(“米”,“科幻小说”);R.YWorldLimits = R.YWorldLimits * unitsratio(“米”,“科幻小说”);

显示光栅图像和矢量数据使用mapshow

图mapshow(波士顿,R)“波士顿和道路”

图中包含一个axes对象。标题为Boston和Roads的axes对象包含2796个类型为line、image的对象。

例5:在地理和投影坐标参考系统中显示数据

您可能拥有坐标为经纬度的地理数据,以及坐标为投影坐标参考系统的其他数据。您可以在相同的地图显示中显示这些数据集。此示例演示了如何使用投影地图坐标参考系统(马萨诸塞州平面大陆区域坐标系)中的数据来显示地理坐标参考系统(经纬度)中的数据。

用坐标为经纬度的世界文件读取光栅图像。使用imread读取图像和worldfileread读取世界文件并构造空间引用对象。

文件名=“boston_ovr.jpg”;概述= imread(文件名);overviewR = worldfileread (getworldfilename(文件名)“地理”、大小(概述));

要在同一个地图显示中显示概览图像和GeoTIFF图像,您需要使用包含投影坐标参考系统中数据的投影信息的映射工具箱™投影结构创建一个地图显示,马萨诸塞州平面大陆区坐标系。要在此系统中显示地图,可以使用GeoTIFF文件中包含的投影信息。使用geotiff2mstruct函数从GeoTIFF信息结构的内容构建一个Mapping Toolbox™投影结构。的geotiff2mstruct函数返回以米为单位的投影。使用投影结构来定义地图显示的投影参数。

mstruct = geotiff2mstruct(信息);

使用波士顿全景图像的经度和纬度限制。

latlim = overviewR.LatitudeLimits;lonlim = overviewR.LongitudeLimits;

创建一个axesm利用投影信息存储在地图投影结构中,并设置了地图的经纬度限制。在地图中显示地理数据。geoshow投影经纬度坐标。

图ax = axesm(mstruct,“网格”,“上”,...“GColor”,(。9。9。9),...“MapLatlimit”latlim,“MapLonLimit”lonlim,...“ParallelLabel”,“上”,“PLabelLocation”.025,“PlabelMeridian”,“西方”,...“MeridianLabel”,“上”,“MlabelLocation”, 0。“MLabelParallel”,“南”,...“MLabelRound”2,“PLabelRound”2,...“PLineVisible”,“上”,“PLineLocation”.025,...“MLineVisible”,“上”,“MlineLocation”, . 05);geoshow(概述、overviewR)轴tightmap标题({“波士顿及周边地区”,“地理坐标”})

由于GeoTIFF图像的坐标位于投影坐标参考系统中,请使用mapshow将更详细的波士顿图像覆盖到显示器上。用红色绘制波士顿图像的边界。

mapshow(波士顿,R)情节(R。XWorldLimits([1 1 2 2 1]), R.YWorldLimits([1 2 2 1 1]),“颜色”,“红色”)标题({“波士顿及周边地区”,“地理和投影坐标”})

图中包含一个axes对象。标题为Boston和周边地区地理和投影坐标的axis对象包含12个类型为曲面、图像、直线和文本的对象。

通过将轴限制设置为Boston图像的限制,放大到GeoTIFF图像的地理区域,并添加一个小缓冲区。请注意,缓冲区大小(δ)以米为单位。

δ= 1000;xLimits = R.XWorldLimits + [-delta delta];yLimits = R.YWorldLimits + [-delta delta];xlim (ax, xLimits) ylim (ax, yLimits) setm (ax,“网格”,“关闭”);

图中包含一个axes对象。标题为Boston和周边地区地理和投影坐标的axis对象包含11个类型为patch、surface、image、line、text的对象。

你可以把道路矢量叠加到地图显示上。使用符号规范为每一类道路赋予自己的颜色。

roadColors = makesymbolspec (“行”,...“类”2,“颜色”,“k”},...“类”3,“颜色”,‘g’},...“类”4“颜色”,“红色”},...“类”5,“颜色”,“青色”},...“类”6“颜色”,“b”},...“默认”,“颜色”,“k”});mapshow(道路、“SymbolSpec”roadColors)标题({“波士顿及周边地区”,“包括波士顿公路”})

图中包含一个axes对象。标题为“波士顿和周边地区包括波士顿道路”的轴线对象包含2806个类型为线、补丁、表面、图像、文本的对象。

您还可以覆盖来自存储在GPX文件中的GPS的数据。导入点地理矢量数据boston_placenames.gpx映射工具箱™软件中包含的文件。该文件包含美国马萨诸塞州波士顿部分地区地理点特征的经纬度坐标。

地名= readgeotable (“boston_placenames.gpx”);

将地名覆盖到地图上,并增加标记的大小,将标记更改为圆形,并将其边缘和面颜色设置为黄色。

geoshow(地名,“标记”,“o”,“MarkerSize”6...“MarkerEdgeColor”,“y”,“MarkerFaceColor”,“y”)标题({“波士顿及周边地区”,“包括波士顿道路和地名”})

图中包含一个axes对象。标题为Boston和周边地区(包括Boston Roads和Placenames)的轴线对象包含2819个类型为线、补丁、表面、图像、文本的对象。

数据集信息

的文件boston.tif而且boston_ovr.jpg包括GeoEye版权所有的材料,版权所有。GeoEye于2013年1月29日并入DigitalGlobe公司。有关数据集的更多信息,请使用命令类型boston.txt而且类型boston_ovr.txt

的文件boston_roads.shp而且boston_placenames.gpx来自马萨诸塞州联邦地理信息局(MassGIS),技术和安全服务执行办公室。有关数据集的更多信息,请使用命令类型boston_roads.txt而且类型boston_placenames_gpx.txt

Baidu
map