Create a square or hexagonal grid over the bounding box of an sf or sfc object
st_make_grid(x, cellsize = c(diff(st_bbox(x)[c(1, 3)]),
diff(st_bbox(x)[c(2, 4)]))/n, offset = st_bbox(x)[c("xmin", "ymin")],
n = c(10, 10), crs = if (missing(x)) NA_crs_ else st_crs(x),
what = "polygons", square = TRUE)
target cellsize
numeric of lengt 2; lower left corner coordinates (x, y) of the grid
integer of length 1 or 2, number of grid cells in x and y direction (columns, rows)
object of class crs
; coordinate reference system of the target of the target grid in case argument x
is missing, if x
is not missing, its crs is inherited.
character; one of: "polygons"
, "corners"
, or "centers"
logical; if FALSE
, create hexagonal grid
Object of class sfc
(simple feature geometry list column) with, depending on what
and square
,
square or hexagonal polygons, corner points of these polygons, or center points of these polygons.
# NOT RUN {
plot(st_make_grid(what = "centers"), axes = TRUE)
plot(st_make_grid(what = "corners"), add = TRUE, col = 'green', pch=3)
sfc = st_sfc(st_polygon(list(rbind(c(0,0), c(1,0), c(1,1), c(0,0)))))
plot(st_make_grid(sfc, cellsize = .1, square = FALSE))
plot(sfc, add = TRUE)
# non-default offset:
plot(st_make_grid(sfc, cellsize = .1, square = FALSE, offset = c(0, .05 / (sqrt(3)/2))))
plot(sfc, add = TRUE)
# }
Run the code above in your browser using DataLab