R: Create viewport from sf, sfc or sfg object

st_viewport {sf} | R Documentation

## Create viewport from sf, sfc or sfg object

### Description

Create viewport from sf, sfc or sfg object

### Usage

    st_viewport(x, ..., bbox = st_bbox(x), asp)

### Arguments

`x` | object of class sf, sfc or sfg object
`...` | parameters passed on to viewport
`bbox` | the bounding box used for aspect ratio
`asp` | numeric; target aspect ratio (y/x), see Details

### Details

parameters `width`, `height`, `xscale` and `yscale` are set such that aspect ratio is honoured and plot size is maximized in the current viewport; others can be passed as `...`

If `asp` is missing, it is taken as 1, except when `isTRUE(st_is_longlat(x))`, in which case it is set to `1.0 /cos(y)`, with `y` the middle of the latitude bounding box.

### Value

The output of the call to viewport

### Examples

    library(grid)
    nc = st_read(system.file("shape/nc.shp", package="sf"))
    grid.newpage()
    pushViewport(viewport(width = 0.8, height = 0.8))
    pushViewport(st_viewport(nc))
    invisible(lapply(st_geometry(nc), function(x) grid.draw(st_as_grob(x, gp = gpar(fill = 'red')))))

[Package sf version 1.0-7 Index]