rasterize#
- rasterize(xds: str | CloudPath | Path | Tuple[ndarray | MaskedArray, dict] | DataArray | Dataset | DatasetReader | DatasetWriter, vector: GeoDataFrame | str | CloudPath | Path, value_field: str = None, default_nodata: int = 0, **kwargs) DataArray | Dataset [source]#
Rasterize a vector into raster format.
Note that passing
merge_alg = MergeAlg.add
will add the vector values to the given rasterSee: https://pygis.io/docs/e_raster_rasterize.html
Use
value_field
to create a raster with multiple values. If set toNone
, the rtaster will be binary.- Parameters:
xds (AnyRasterType) – Path to the raster or a rasterio dataset or a xarray, used as base for the vector’s rasterization data (shape, etc.)
vector (Union[gpd.GeoDataFrame, AnyPathStrType]) – Vector to be rasterized
value_field (str) – Field of the vector with the values to be burnt on the raster (should be scalars). If let to None, the raster will be binary.
default_nodata (int) – Default nodata of the raster (outside the vector in the raster extent)
- Returns:
Rasterized vector
- Return type:
AnyXrDataStructure
Example
>>> raster_path = "path/to/raster.tif" >>> vec_path = "path/to/vector.shp" >>> rasterize(raster_path, vec_path, value_field="classes")