[R-sig-Geo] Combine two rasters with different spatial coverage
Thiago Veloso
thi_veloso at yahoo.com.br
Wed Feb 8 20:41:52 CET 2012
Dear list,
I am trying to combine two rasters. One raster has global coverage, while other covers only Amazon.
Let me show in pratice. First I create an emtpy structure with the intended domain (global) and resolution (0.5 degree):
> library(raster)
> glb<-raster(nrows=360,ncols=720,xmn=-180,xmx=180,ymn=-90,ymx=90)
> glb[]<-NA
> glb
class : RasterLayer
dimensions : 360, 720, 259200 (nrow, ncol, ncell)
resolution : 0.5, 0.5 (x, y)
extent : -180, 180, -90, 90 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
values : in memory
min value : NA
max value : NA
On the other hand, I load a Amazon deforestation file which contains values between 0 and 1:
> amz<-raster("/home/data/amz.img")
> amz
class : RasterLayer
dimensions : 47, 65, 3055 (nrow, ncol, ncell)
resolution : 0.5, 0.5 (x, y)
extent : -74, -41.5, -17.5, 6 (xmin, xmax, ymin, ymax)
coord. ref. : NA
values : /home/data/amz.img
min value : 0
max value : 1
Next, I apply the same projection:
> projection(amz) <- projection(glb)
> amz
class : RasterLayer
dimensions : 47, 65, 3055 (nrow, ncol, ncell)
resolution : 0.5, 0.5 (x, y)
extent : -74, -41.5, -17.5, 6 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
values : /home/data/amz.img
min value : 0
max value : 1
Last, after trying to replace NA values in the global raster with the values of the amazon object,
> result <- cover(glb,amz)
a erratic stripe across the globe is produced, like showed in this image: http://img269.imageshack.us/img269/1328/errorau.png
Does anyone have a suggestion to solve this problem?
Thanks in advance,
Thiago.
More information about the R-sig-Geo
mailing list