Thanks for the suggestion Chris. I'm familiar with gdaldem, which
raster::terrain is based on, to compute slope from a dem. I now realize
that my example isnt a good one because neighbors=8 would achieve what
I
described. However I actually want some flexibility such that I can
specifiy neighbors=16 so that it uses the next "ring" of cells.
I played around with focal() with weight argument =
matrix(rep(c(1,0,0,0,1),5),byrow=T) but couldn't figure out how to
solve
for a directional slope.
On Fri, Feb 19, 2016 at 4:09 AM, chris english <
englishchristophera at gmail.com> wrote:
Dominik,
r <- raster(nrows=22, ncols=20, xmn=-58, xmx=-48, ymn=-33, ymx=-22)
vals <- sample.int(1e3,440)
r[ ] <- vals
#raster::terrain
terr_r <- terrain(r, opt='slope', unit='degrees', neighbors=8)
Ah, but it appears you want up sampling to 1.5 degrees rather than
so maybe spatial.tools::projectRaster_rigorous then raster:terrain.
I'm inclined to end that last so maybe with a question mark. Sorry
essentially inconclusive response but I was happy to find terrain in
case.
Chris
On Fri, Feb 19, 2016 at 2:59 AM, Dominik Schneider <
Dominik.Schneider at colorado.edu> wrote:
I need to calculate slope at different scales. In the case below, r
0.5deg resolution raster and I want the slope for 1.5 deg centered
of those 0.5 deg pixels. I'm trying to estimate which side of
range each pixel is on. So the resulting raster would have the same
of pixels as r. The edges can be NA.
any suggestions would be appreciated. Thanks
r <- raster(nrows=22, ncols=20, xmn=-58, xmx=-48, ymn=-33, ymx=-22)
setValues(r,rnorm(440))
[[alternative HTML version deleted]]