hydromt.data_adapter.GeoDataFrameAdapter#

class hydromt.data_adapter.GeoDataFrameAdapter(path: str | Path, driver: str | None = None, filesystem: str | None = None, crs: int | str | dict | None = None, nodata: dict | float | int | None = None, rename: dict | None = None, unit_mult: dict | None = None, unit_add: dict | None = None, meta: dict | None = None, attrs: dict | None = None, extent: dict | None = None, driver_kwargs: dict | None = None, storage_options: dict | None = None, name: str = '', catalog_name: str = '', provider: str | None = None, version: int | str | None = None, **kwargs)[source]#

The Geodataframe adapter implementation.

Initiate data adapter for geospatial vector data.

This object contains all properties required to read supported files into a single unified geopandas.GeoDataFrame(). In addition it keeps meta data to be able to reproduce which data is used.

Parameters:
  • path (str, Path) – Path to data source. If the dataset consists of multiple files, the path may contain {variable} placeholders as well as path search pattern using a * wildcard.

  • driver ({'vector', 'vector_table'}, optional) – Driver to read files with, for ‘vector’ read_file(), for {‘vector_table’} hydromt.io.open_vector_from_table() By default the driver is inferred from the file extension and falls back to ‘vector’ if unknown.

  • filesystem (str, optional) – Filesystem where the data is stored (local, cloud, http etc.). If None (default) the filesystem is inferred from the path. See fsspec.registry.known_implementations() for all options.

  • crs (int, dict, or str, optional) – Coordinate Reference System. Accepts EPSG codes (int or str); proj (str or dict) or wkt (str). Only used if the data has no native CRS.

  • nodata (dictionary, float, int, optional) – Missing value number. Only used if the data has no native missing value. Nodata values can be differentiated between variables using a dictionary.

  • rename (dict, optional) – Mapping of native data source variable to output source variable name as required by hydroMT.

  • unit_mult (dict, optional) – Scaling multiplication and addition to change to map from the native data unit to the output data unit as required by hydroMT.

  • unit_add (dict, optional) – Scaling multiplication and addition to change to map from the native data unit to the output data unit as required by hydroMT.

  • meta (dict, optional) – Metadata information of dataset, prefably containing the following keys: - ‘source_version’ - ‘source_url’ - ‘source_license’ - ‘paper_ref’ - ‘paper_doi’ - ‘category’

  • placeholders (dict, optional) – Placeholders to expand yaml entry to multiple entries (name and path) based on placeholder values

  • attrs (dict, optional) – Additional attributes relating to data variables. For instance unit or long name of the variable.

  • extent (Extent(typed dict), Optional) – Dictionary describing the spatial and time range the dataset covers. should be of the form: - “bbox”: [xmin, ymin, xmax, ymax], - “time_range”: [start_datetime, end_datetime], data, and time_range should be inclusive on both sides.

  • driver_kwargs – Additional key-word arguments passed to the driver.

  • dict – Additional key-word arguments passed to the driver.

  • optional – Additional key-word arguments passed to the driver.

  • storage_options (dict, optional) – Additional key-word arguments passed to the fsspec FileSystem object.

  • name (str, optional) – Name of the dataset and catalog, optional.

  • catalog_name (str, optional) – Name of the dataset and catalog, optional.

  • provider (str, optional) – A name to identifiy the specific provider of the dataset requested. if None is provided, the last added source will be used.

  • version (str, optional) – A name to identifiy the specific version of the dataset requested. if None is provided, the last added source will be used.

__init__(path: str | Path, driver: str | None = None, filesystem: str | None = None, crs: int | str | dict | None = None, nodata: dict | float | int | None = None, rename: dict | None = None, unit_mult: dict | None = None, unit_add: dict | None = None, meta: dict | None = None, attrs: dict | None = None, extent: dict | None = None, driver_kwargs: dict | None = None, storage_options: dict | None = None, name: str = '', catalog_name: str = '', provider: str | None = None, version: int | str | None = None, **kwargs)[source]#

Initiate data adapter for geospatial vector data.

This object contains all properties required to read supported files into a single unified geopandas.GeoDataFrame(). In addition it keeps meta data to be able to reproduce which data is used.

Parameters:
  • path (str, Path) – Path to data source. If the dataset consists of multiple files, the path may contain {variable} placeholders as well as path search pattern using a * wildcard.

  • driver ({'vector', 'vector_table'}, optional) – Driver to read files with, for ‘vector’ read_file(), for {‘vector_table’} hydromt.io.open_vector_from_table() By default the driver is inferred from the file extension and falls back to ‘vector’ if unknown.

  • filesystem (str, optional) – Filesystem where the data is stored (local, cloud, http etc.). If None (default) the filesystem is inferred from the path. See fsspec.registry.known_implementations() for all options.

  • crs (int, dict, or str, optional) – Coordinate Reference System. Accepts EPSG codes (int or str); proj (str or dict) or wkt (str). Only used if the data has no native CRS.

  • nodata (dictionary, float, int, optional) – Missing value number. Only used if the data has no native missing value. Nodata values can be differentiated between variables using a dictionary.

  • rename (dict, optional) – Mapping of native data source variable to output source variable name as required by hydroMT.

  • unit_mult (dict, optional) – Scaling multiplication and addition to change to map from the native data unit to the output data unit as required by hydroMT.

  • unit_add (dict, optional) – Scaling multiplication and addition to change to map from the native data unit to the output data unit as required by hydroMT.

  • meta (dict, optional) – Metadata information of dataset, prefably containing the following keys: - ‘source_version’ - ‘source_url’ - ‘source_license’ - ‘paper_ref’ - ‘paper_doi’ - ‘category’

  • placeholders (dict, optional) – Placeholders to expand yaml entry to multiple entries (name and path) based on placeholder values

  • attrs (dict, optional) – Additional attributes relating to data variables. For instance unit or long name of the variable.

  • extent (Extent(typed dict), Optional) – Dictionary describing the spatial and time range the dataset covers. should be of the form: - “bbox”: [xmin, ymin, xmax, ymax], - “time_range”: [start_datetime, end_datetime], data, and time_range should be inclusive on both sides.

  • driver_kwargs – Additional key-word arguments passed to the driver.

  • dict – Additional key-word arguments passed to the driver.

  • optional – Additional key-word arguments passed to the driver.

  • storage_options (dict, optional) – Additional key-word arguments passed to the fsspec FileSystem object.

  • name (str, optional) – Name of the dataset and catalog, optional.

  • catalog_name (str, optional) – Name of the dataset and catalog, optional.

  • provider (str, optional) – A name to identifiy the specific provider of the dataset requested. if None is provided, the last added source will be used.

  • version (str, optional) – A name to identifiy the specific version of the dataset requested. if None is provided, the last added source will be used.

Methods

__init__(path[, driver, filesystem, crs, ...])

Initiate data adapter for geospatial vector data.

detect_bbox([gdf])

Detect the bounding box and crs of the dataset.

get_bbox([detect])

Return the bounding box and espg code of the dataset.

get_data([bbox, geom, buffer, predicate, ...])

Return a clipped and unified GeoDataFrame (vector).

mark_as_used()

Mark the data adapter as used.

summary()

Return a dictionary summary of the data adapter.

to_dict()

Return a dictionary view of the data source.

to_file(data_root, data_name[, bbox, ...])

Save a data slice to file.

to_stac_catalog([on_error])

Convert a geodataframe into a STAC Catalog representation.

Attributes

data_type

Return the datatype of the addapter.

fs

Return the filesystem object .