使用R更改光栅投影
我正在尝试使用使用R更改光栅投影,r,gis,projection,raster,R,Gis,Projection,Raster,我正在尝试使用R和raster包更改光栅投影。输入光栅投影为Lambert方位投影;参数如下: Coordinate System: Lambert_Azimuthal_Equal_Area False_Easting: 4321000,000000 False_Northing: 3210000,000000 Central_Meridian: 10,000000 Latitude_Of_Origin: 52,000000 GCS_ETRS_1989 Datum: D_ETRS_1989 Pr
R
和raster
包更改光栅投影。输入光栅投影为Lambert方位投影;参数如下:
Coordinate System:
Lambert_Azimuthal_Equal_Area
False_Easting: 4321000,000000
False_Northing: 3210000,000000
Central_Meridian: 10,000000
Latitude_Of_Origin: 52,000000
GCS_ETRS_1989
Datum: D_ETRS_1989
Prime Meridian: 0
PROJCS
["ETRS_1989_LAEA",
GEOGCS ["GCS_ETRS_1989",
DATUM ["D_ETRS_1989",
SPHEROID ["GRS_1980",6378137.0,298.257222101]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]],
PROJECTION["Lambert_Azimuthal_Equal_Area"],
PARAMETER["False_Easting",4321000.0],
PARAMETER["False_Northing",3210000.0],
PARAMETER["Central_Meridian",10.0],
PARAMETER["Latitude_Of_Origin",52.0],
UNIT["Meter",1.0]]
我需要将它们转换为ESRI ASCII格式的简单光栅,使用经纬度坐标,使用墨卡托式投影,单元大小为0.1度(我希望我解释得足够好,因为我没有足够的GIS技能,对不起)。我需要的是.ASC
格式的光栅,其中光栅的每个值对应于大小为N x N
的单个单元格,其中N
以度为单位(例如0.1度),光栅坐标以经度/纬度为单位
我尝试使用R
中的graster
库,并遵循为projectgraster
函数找到的示例。但在多次尝试使用多个参数后,我无法正确地进行设置。我想我没有为投影、基准或类似的东西使用正确的参数
这是我试过的。我在R中加载光栅,然后使用以下方法设置其投影:
>crs(r)<-"+proj=laea +lat_1=52 +lon_0=-10 +ellps=GRS80"
crs(r)新项目pr2写入器(pr2,“newraster.asc”,overwrite=TRUE)
没有错误消息,但生成的光栅投影不正确(国家边界不匹配,国家略有扭曲)
谢谢你的帮助 根据您提供的投影描述,这似乎是错误的:
crs(r) <- "+proj=laea +lat_1=52 +lon_0=-10 +ellps=GRS80"
crs(r)欢迎来到SO,感谢您发帖提问。请告诉我们您尝试了哪些代码以及收到的错误消息(如果有)。如果可能,您可以链接一个示例光栅供我们使用吗?这将允许我们查看是文件本身有问题,还是您的代码有问题。
crs(r) <- "+proj=laea +lat_1=52 +lon_0=-10 +ellps=GRS80"
crs(r) <- "+proj=laea +lat_0=52 +lon_0=10 +x_0=4321000 +y_0=3210000 +ellps=GRS80 +units=m"
newproj <- "+proj=lonlat +lat_1=52 +lon_0=-10 +ellps=WGS84"
newproj <- "+proj=longlat +datum=WGS84"