Nonetheless, it's pretty slow, and I'm wondering if anyone has any suggestions for improving the efficiency and speed of my code. I've found that the extract function works much faster if I iterate through each individual polygon and crop then mask the raster down to the size of the particular polygon. See window for a virtual and sometimes more efficient way to crop a dataset.Įxamples r <- rast(xmin=0, xmax=10, ymin=0, ymax=10, nrows=25, ncols=25)į <- system.file("ex/elev.tif", package="terra")į <- system.file("ex/lux.shp", package="terra")į <- system.file("ex/lux.I'm extracting the area and percent cover of different land use types from a raster based on several thousand polygon boundaries. This also changes the behavior when y is an extent in two ways: (1) points that are on the extent boundary are removed and (2) lon/lat extents that go beyond -180 or 180 degrees longitude are wrapped around the earth to include areas at the other end of the dateline Should rows and/or columns be added if y is beyond the extent of x? Also see extendĪdditional arguments for writing files as in writeRaster If TRUE and mask=TRUE, all cells touched by lines or polygons will be masked, not just those on the line render path, or whose center point is within the polygon Should y be used to mask? Only used if y is a SpatVector, SpatRaster or sf SpatRaster, SpatVector, SpatExtent, or any other object that has a SpatExtent ( ext returns a SpatExtent)Ĭharacter. # S4 method for signature 'SpatGraticule' # S4 method for signature 'SpatRasterCollection' # S4 method for signature 'SpatRasterDataset' Usage # S4 method for signature 'SpatRaster'Ĭrop(x, y, snap="near", mask=FALSE, touches=TRUE, extend=FALSE, filename="". You can also crop a SpatVector with a rectangle (SpatRaster, SpatExtent). Unlike with intersect the geometries and attributes of y are not transferred to the output. If these are not polygons, the minimum convex hull is used). You can crop a SpatVector with another SpatVector. See methods like resample and disagg to force SpatRasters to align and extend to add rows and/or columns. Also note that the SpatRaster returned may not have the exactly the same extent as the SpatExtent supplied because you can only select entire cells (rows and columns), and you cannot add new areas. You can only crop rectangular areas, but see mask for setting cell values within SpatRaster to NA. densify: Add additional nodes to lines or polygonsĬut out a part of a SpatRaster with a SpatExtent, or another object from which an extent can be obtained.crs: Get or set a coordinate reference system.crds: Get the coordinates of SpatVector geometries or SpatRaster.cover: Replace values with values from another object.convhull: Convex hull, minimal bounding rotated rectangle, and minimal.concats: Concatenate categorical rasters.compareGeom: Compare geometries of SpatRasters.compare-generics: Compare and logical methods.collapse: tighten SpatRaster or SpatRasterDataset objects.coerce: Coercion to vector, matrix or array.classify: Classify (or reclassify) cell values.cellSize: Area covered by each raster cell.c: Combine SpatRaster or SpatVector objects.buffer: Create a buffer around vector geometries or raster patches.as.polygons: Conversion to a SpatVector of polygons.as.points: Conversion to a SpatVector of points.as.list: Coerce a Spat* object to a list.as.lines: Conversion to a SpatVector of lines.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |