R 通过指定LCC投影将矩阵转换为光栅

R 通过指定LCC投影将矩阵转换为光栅,r,raster,R,Raster,我想将仅数据矩阵(不是xyz类型的表)转换为光栅图层。每列和每行表示经度和纬度 然而,在栅格化矩阵时,我正在努力为其分配CR 我的数据应该在LCC投影中进行投影。我知道的所有参数如下 因此,我用CRS()函数分配了mycrs,分配如下。 我无法在raster()中分配res=7500参数,因为它返回了一个错误 mx <- matrix(rep(1, 13770), nrow=90, ncol=153) # reproducible example of mx mycrs <- CRS

我想将仅数据矩阵(不是xyz类型的表)转换为光栅图层。每列和每行表示经度和纬度

然而,在栅格化矩阵时,我正在努力为其分配CR

我的数据应该在LCC投影中进行投影。我知道的所有参数如下

因此,我用
CRS()
函数分配了
mycrs
,分配如下。 我无法在
raster()
中分配
res=7500
参数,因为它返回了一个错误

mx <- matrix(rep(1, 13770), nrow=90, ncol=153) # reproducible example of mx
mycrs <- CRS("+proj=lcc +lat_1=30 +lat_2=60 +lat_0=37.99787 +lon_0=127.4592 +datum=WGS84 +units=m +no_defs")
r <- raster(mx, crs=mycrs)
嗯,控制台没有返回任何警告,但是结果很尴尬

维度
似乎正常,但
分辨率
范围
一定是错误的

层的域应该是

(123.25, 43.23) ------- (131.78, 43.17)
       :                        :
       :                        :
(123.80, 32.73) ------- (131.01, 32.68)

是否有任何其他方法可以使用给定的CRS参数将mx转换为光栅?

在这种情况下,您需要知道坐标参考系(CRS),
llc
的范围。数据源应提供数据可用性所需的信息。您在lon/lat中有范围,但在llc中没有。我们可以估计它:

library(raster)         
e <- extent(123.25, 131.78, 32.68, 43.23)
p <- as(e, "SpatialPolygons")
crs(p) <- "+proj=longlat +datum=WGS84"

library(rgdal)
llc <- "+proj=lcc +lat_1=30 +lat_2=60 +lat_0=37.99787 +lon_0=127.4592 +datum=WGS84"
pp <- spTransform(p, llc)
库(光栅)

e您需要知道坐标参考系(crs)的范围,在这种情况下,
llc
。数据源应提供数据可用性所需的信息。您在lon/lat中有范围,但在llc中没有。我们可以估计它:

library(raster)         
e <- extent(123.25, 131.78, 32.68, 43.23)
p <- as(e, "SpatialPolygons")
crs(p) <- "+proj=longlat +datum=WGS84"

library(rgdal)
llc <- "+proj=lcc +lat_1=30 +lat_2=60 +lat_0=37.99787 +lon_0=127.4592 +datum=WGS84"
pp <- spTransform(p, llc)
库(光栅)

是的,我没有注意到提供的范围。我试图重新投影,但无法获得相同的列和行(nrows=90,ncols=153),因此我删除了我的响应。谢谢你纠正我。是的,我没有注意到提供的范围。我试图重新投影,但无法获得相同的列和行(nrows=90,ncols=153),因此我删除了我的响应。谢谢你纠正我。
library(raster)         
e <- extent(123.25, 131.78, 32.68, 43.23)
p <- as(e, "SpatialPolygons")
crs(p) <- "+proj=longlat +datum=WGS84"

library(rgdal)
llc <- "+proj=lcc +lat_1=30 +lat_2=60 +lat_0=37.99787 +lon_0=127.4592 +datum=WGS84"
pp <- spTransform(p, llc)
r <- raster(pp)
res(r) <- 7500
r
#class      : RasterLayer 
#dimensions : 152, 105, 15960  (nrow, ncol, ncell)
#resolution : 7500, 7500  (x, y)
#extent     : -390412.6, 397087.4, -567400.8, 572599.2  (xmin, xmax, ymin, ymax)
#crs        : +proj=lcc +lat_1=30 +lat_2=60 +lat_0=37.99787 +lon_0=127.4592 +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0