library(sf)
if(require(sp, quietly = TRUE)) {
data(meuse, package = "sp")
meuse <- st_as_sf(meuse, coords = c("x", "y"), crs = 28992,
agr = "constant")
hex <- hexagons(meuse, res=300)
plot(st_geometry(hex))
plot(st_geometry(meuse),pch=20,add=TRUE)
# subset hexagons to intersection with points
idx <- which(apply(st_intersects(hex, meuse, sparse=FALSE), 1, any))
hex.sub <- hex[idx,]
plot(st_geometry(hex.sub))
plot(st_geometry(meuse),pch=20,add=TRUE)
} else {
cat("Please install sp package to run example", "\n")
}
Run the code above in your browser using DataLab