This function creates a GVector
of "wall-to-wall" cells (like a lattice). The input can be a GVector
or GRaster
, which provides the extent of the output.
Usage
# S4 method for class 'GRaster'
grid(x, nx = NULL, ny = NULL, use = "number", angle = 0)
# S4 method for class 'GVector'
grid(x, nx = NULL, ny = NULL, use = "number", angle = 0)
Arguments
- x
A
GRaster
orGVector
.- nx, ny
Integer or numeric:
If
use
is"number"
, then these values represent the number of rows and columns in the grid.If
use
issize
, then these values represent the size of the cells in the x- and y-dimensions.
- use
Character: How to generate the grid. If this is
number
(default), thennx
andny
are taken to be the number of grid cells. Ifsize
, thennx
andny
are taken to be the size of the grid cells.- angle
Numeric: Degrees by which to rotate grid (from north, clockwise).
See also
hexagons()
, module v.mkgrid
in GRASS
Examples
if (grassStarted()) {
# Setup
library(sf)
# Points vector of specimens of species in the plant genus Dypsis
madCoast0 <- fastData("madCoast0")
# Convert sf to a GVector:
coast <- fast(madCoast0)
### grid
# grid specified by number of cells in x-dimension
g1 <- grid(coast, nx = 10)
plot(coast, col = "cornflowerblue")
plot(g1, add = TRUE)
# grid specified by number of cells in x- and y-dimension
g2 <- grid(coast, nx = 10, ny = 5)
plot(coast, col = "cornflowerblue")
plot(g2, add = TRUE)
# grid specified by size of cells in both dimensions
g3 <- grid(coast, nx = 1250, ny = 2000, use = "size")
plot(coast, col = "cornflowerblue")
plot(g3, add = TRUE)
### hexagons
hexes <- hexagons(coast, ny = 10)
plot(hexes)
plot(coast, lwd = 2, add = TRUE)
hexes <- hexagons(coast, ny = 10, expand = c(0.3, 0.1))
plot(hexes)
plot(coast, lwd = 2, add = TRUE)
}