Jak przypisać CRS do RasterLayer w R.

16

Mam warstwę z coord. ref. : NA.

Jak mogę przypisać coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0do coord. ref. : NA?

class       : RasterLayer 
dimensions  : 127, 146, 18542  (nrow, ncol, ncell)
resolution  : 0.01, 0.01  (x, y)
extent      : -122.39, -120.93, 36.72, 37.99  (xmin, xmax, ymin, ymax)
coord. ref. : NA 
data source : C:\2012Tif\2012ASC5min_ppt_spas1306_0001_20121222_0005_UTC.asc.tif 
names       : X2012ASC5min_ppt_spas1306_0001_20121222_0005_UTC.asc 
values      : 0, 0.0782172  (min, max)


class       : RasterLayer 
dimensions  : 180, 240, 43200  (nrow, ncol, ncell)
resolution  : 0.01, 0.01  (x, y)
extent      : -123.305, -120.905, 36.705, 38.505  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +to wgs84=0,0,0 
data source : C:\Users\nahmlee\Documents\1998Test.tif 
names       : X1998Test 
values      : 0, 0.07884484  (min, max)
Nahm
źródło

Odpowiedzi:

22

Użyj crsfunkcji. Jeśli rtwój raster:

crs(r) <- "+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0" 

Oczywiście musisz upewnić się, że jest to właściwa projekcja dla twojego rastra.


źródło
5
Rezultat jest taki sam, ale ta wersja jest łatwiejsza do dostosowania do innych systemów referencyjnych: crs(r) <- CRS('+init=EPSG:4326')jeśli znasz numer EPSG.
Julian
To powinno być CRS("+init=epsg:28992")dla rgdal.
buława