我在光栅文件上绘制了一个区域,但是我需要知道这个框中有多少像素(通过该区域):
光栅文件为1440 pixels*720 lines``(25km*25km)
。
示例:
saf <- stack(system.file("external/rlogo.grd", package="raster"))
plotRGB( saf )
e <- drawExtent()
所以在此之后我把e
作为一个方框但是这个区域有多少像素/多少?
感谢
答案 0 :(得分:3)
尝试使用raster::crop
...
crop(saf , e )
#class : RasterBrick
#dimensions : 40, 50, 2000, 3 (nrow, ncol, ncell, nlayers)
#resolution : 1, 1 (x, y)
#extent : 23, 73, 26, 66 (xmin, xmax, ymin, ymax)
#coord. ref. : +proj=merc
#data source : in memory
#names : red, green, blue
#min values : 0, 0, 0
#max values : 255, 255, 255
如果你只想要细胞数......
ncell( crop(saf , e ) )
#[1] 2000
并消除NA ......
x <- crop( saf , e )
ncell( ! is.na(x[]) )