Note
Go to the end to download the full example code
From/to Rasterio#
This example demonstrates importing and exporting a rasterio.io.DatasetReader
or rasterio.io.DatasetReader
from and to a
Raster
.
import rasterio as rio
A raster can be imported from a rasterio.io.DatasetReader
or rasterio.io.MemoryFile
simply by instantiating Raster
.
import geoutils as gu
filename_rast = gu.examples.get_path("exploradores_aster_dem")
ds = rio.DatasetReader(filename_rast)
rast = gu.Raster(ds)
rast
The data is unloaded, as when instantiated with a filename.
The data will be loaded explicitly by any function requiring its data
, such as show()
.
rast.plot(cmap="terrain")
We can also pass a rasterio.io.MemoryFile
during instantiation.
mem = rio.MemoryFile(open(filename_rast, "rb"))
rast = gu.Raster(mem)
rast
The data is, as expected, already in memory.
Finally, we can export a Raster
to a rasterio.io.DatasetReader
of a rasterio.io.MemoryFile
using
to_rio_dataset
<open DatasetReader name='/vsimem/2ef8ad34-e3e8-406d-8d5b-964404396b59/2ef8ad34-e3e8-406d-8d5b-964404396b59.tif' mode='r'>
Total running time of the script: (0 minutes 0.139 seconds)