I have a rasterStack object in R and a set of polygons that represent different landcover classes in that area. For all the cells that fall in those polygons, I have extracted pixel values for each band and saved these in a dataframe. However, I can't get the centroid coordinates for these cells and I need them. Any advice on how to achieve that?

1 Answer 1


You can use xyFromCell

r <- raster(ncols=5, nrows=5)
cells <- c(3, 7, 10)
xyFromCell(r, cells)
#       x  y
#[1,]   0 72
#[2,] -72 36
#[3,] 144 36

If you wanted the coordinates for all cells, you could do

xy <- xyFromCell(r, 1:ncell(r))


xy <- coordinates(raster(r))

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.