Crop a shape object (from class sf
, stars
, sp
, or raster
). A shape file x
is cropped, either by the bounding box of another shape y
, or by y
itself if it is a SpatialPolygons object and polygon = TRUE
.
Arguments
- x
shape object, i.e. an object from class
sf
,stars
,sp
, orraster
.- y
bounding box, an
st_bbox
,extent
(raster
package), or a shape object from which the bounding box is extracted (unlesspolygon
isTRUE
andx
is ansf
object).- polygon
should
x
be cropped by the polygon defined byy
? IfFALSE
(default),x
is cropped by the bounding box ofx
. Polygon cropping only works whenx
is a spatial object andy
is aSpatialPolygons
object.- ...
not used anymore
Details
This function is similar to crop
from the raster
package. The main difference is that crop_shape
also allows to crop using a polygon instead of a rectangle.
Examples
if (require(tmap) && packageVersion("tmap") >= "3.99") {
data(World, NLD_muni, land, metro)
#land_NLD <- crop_shape(land, NLD_muni)
#qtm(land_NLD, raster="trees", style="natural")
metro_Europe <- crop_shape(metro, World[World$continent == "Europe", ], polygon = TRUE)
qtm(World) +
tm_shape(metro_Europe) +
tm_bubbles("pop2010",
col="red",
size.legend = tm_legend("European cities")) +
tm_legend(frame=TRUE)
}