我正在尝试将分水岭形状文件的X和Y分量更改为Lon和Lat。我以为这会像下面这样简单:
W8 = shaperead(WBD_HU_08_IA.shp,'UseGeoCoords',false);
nrrb = W8(27) % this gives the polygon info for the North Raccoon River Basin only
>Geometry: 'Polygon'
>BoundingBox: [2x2 double]
> X: [1x14530 double]
> Y: [1x14530 double]
> REGION: 'Upper Mississippi R…'
> ...
> FIPS_C: ' 19161 19121 19147 …'
X和Y在UTM中的位置:
>BondingBox =
>1.0e+06 *
>0.3104 4.5928
>0.4490 4.7554
通过更改“UseGeoCoords”= true,会发生以下情况:
W8 = shaperead(WBD_HU_08_IA.shp,'UseGeoCoords',true);
nrrb = W8(27)
>Geometry: 'Polygon'
>BoundingBox: [2x2 double]
> Lon: [1x14530 double]
> Lat: [1x14530 double]
> REGION: 'Upper Mississippi R…'
...
> FIPS_C: ' 19161 19121 19147 …'
BoundingBox,Lat和Lon应从UTM更改为度,但不会发生。
我目前陷入困境,不知道还有什么可以让这些单位转换。我尝试使用utm2deg,utm2ll,MappingToolbox等代码似乎不起作用。我不断收到错误
ZONE must be integer value, scalar or same size as X and/or Y.
当我设置我的区域='15N'时,这就是NRRB的用途。我甚至创建了一个循环,将'15N'放入一个数组,使其与X和Y的大小相同,这给了我一个错误说
Too many input arguments.
我的最终目标是将UTM转换为度数,以便我可以在我的NetCDF数据图上投影NRRB分水岭的轮廓,这些数据图采用Lon / Lat格式。任何关于如何解决这个问题或让utm2deg或utm2ll正常工作的建议都会令人惊叹。先感谢您!