Note
Go to the end to download the full example code.
Mask from a vector#
This example demonstrates the creation of a mask from a vector using geoutils.Vector.create_mask()
.
We open a raster and vector.
import geoutils as gu
filename_rast = gu.examples.get_path("everest_landsat_b4")
filename_vect = gu.examples.get_path("everest_rgi_outlines")
rast = gu.Raster(filename_rast)
vect = gu.Vector(filename_vect)
Let’s plot the raster and vector.

First option: using the raster as a reference to match, we create a mask for the vector in any projection and georeferenced grid. We simply have to pass
the Raster
as single argument to rasterize()
. See Match-reference functionality for more details.
vect_rasterized = vect.create_mask(rast)
vect_rasterized.plot(ax="new")

Note
This is equivalent to using rasterize()
with in_value=1
and out_value=0
and will return a Mask
.
Second option: we can pass any georeferencing parameter to create_mask()
. Any unpassed attribute will be deduced from the
Vector
itself, except from the shape
to rasterize that will default to 1000 x 1000.
# vect_rasterized = vect.create_mask(xres=500)
# vect_rasterized.plot()
Important
The shape
or the res
are the only unknown arguments to rasterize a Vector
,
one or the other can be passed.
Total running time of the script: (0 minutes 2.627 seconds)