A part of HyRiver software stack for accessing hydrology data through web services
exceptions
module to the high-level API to declutter the main module. In the future, all exceptions will be raised from this module and not from the main module. For now, the exceptions are raised from both modules for backward compatibility.EHydro
class, sometimes the requested surveys are not in the same CRS, so they couldn't be combined into a single GeoDataFrame
. This issue is fixed by reprojecting all the requested surveys to 5070 CRS before combining them.nlcd_helper
function the roughness value for class 82 was set to 0.16 instead of 0.037.NWIS
class to classmethod
so the class can be used without instantiating it. This change makes the class more flexible and easier to use.NID
class, the stage_nid_inventory
method now checks if the remote NID database has been modified since the last download and only downloads the new data if it has been modified. This change makes the method more efficient and reduces the network traffic while ensuring that the local database is always up-to-date.EHydro
class called survey_grid
. It's a geopandas.GeoDataFrame
that includes the survey grid of the eHydro dataset which is a 35-km hexagonal grid.data_type
in EHydro
to bathymetry
, points
, outlines
, or contours
to get the corresponding data. The default is points
since this is the recommended data type by USACE.NFHL
class within nfhl
module to access FEMA's National Flood Hazard Layer (NFHL) using six different ArcGISRESTFul services. Contributed by Fernando Aristizabal. (108
{.interpreted-text role="pull_hydro"})dask
.nlcd
. This doesn't affect the API since the functions are still available under pygeohydro
namespace.This release provides access to three new datasets:
EHydro
and gives users the ability to subset the eHydro dataset by geometry, ID, or SQL queries.stnfloodevents
module with STNFloodEventData
class for retrieving flood event data from the USGS Short-Term Network (STN) RESTful Service. This Python API abstracts away RESTful principles and produces analysis ready data in geo-referenced GeoDataFrames, DataFrames, lists, or dictionaries as desired. The core class methods available are data_dictionary
, get_all_data
, and get_filtered_data
. These class methods retrieve the data dictionaries by type, get all the available data by type, and make filtered requests for data by type as well, respectively. The four types of data include instruments
, peaks
, hwms
, and sites
. Contributed by Fernando Aristizabal.STNFloodEventData
class called stn_flood_event
.From release 0.15 onward, all minor versions of HyRiver packages will be pinned. This ensures that previous minor versions of HyRiver packages cannot be installed with later minor releases. For example, if you have py3dep==0.14.x
installed, you cannot install pydaymet==0.15.x
. This is to ensure that the API is consistent across all minor versions.
NWIS.get_info
, called nhd_info
, for retrieving NHDPlus related info on the sites. This will two new service calls that might slow down the function, so it's disabled by default.NID
to the latest CSV and GPKG versions of the NID dataset.NID
to access the entire NID dataset. You can use NID.df
to access the CSV version as a pandas.DataFrame
and NID.gdf
to access the GPKG version as a geopandas.GeoDataFrame
. Installing pyogrio
is highly recommended for much faster reading of the GPKG version.NID.bygeom
to use the new NID.gdf
property for spatial querying of the dataset. This change should make the query much faster.shapely<2
while supporting shapley>=2
.nlcd_area_percent
, for computing the percentages or natural, developed, and impervious areas within geometries of a given GeoDataFrame
. This function uses imperviousness and land use/land cover data from NLCD to compute the area percentages of the natural, developed, and impervious areas. For more information please refer to the function's documentation.NWIS.get_info
, called nhd_comid
, and rename drain_sqkm
to nhd_areasqkm
. The new drainage area is the best available estimates of stations' drainage area that have been extracted from the NHDPlus. The new nhd_comid
column makes it easier to link stations to NHDPlus.get_camels
, return qobs
with negatives values set to NaN
. Also, Add a new variable called Newman_2017
to both datasets for identifying the 531 stations that were used in Newman et al. (2017).streamflow_fillna
, for filling missing streamflow values (NAN
) with day-of-year average values.shapely
to 2.0, and use its new API.NLCD
and also reducing the memory footprint of the functions.SensorThings
class only supports Things
endpoint. Users need to provide a valid Odata filter. The class has a odata_helper
function that can be used to generate and validate Odata filters. Additionally, using sensor_info
and sensor_property
functions users can request for information about sensors themselves or their properties.pygeoutils.geo2polygon
function in ssebopeta_bygeom
.setup.cfg
and setup.py
to pyproject.toml
.absolufy-imports
.NID.inventory_byid
function. This function now accepts Federal IDs instead of dam IDs.show_versions
function to improve performance and print the output in a nicer table-like format.pygeoogc.streaming_download
function in huc_wb_full
to improve performance and reduce code complexity.geopandas
related to empty dataframes.pyright
for static type checking instead of mypy
and address all typing issues that it raised.huc_wb_full
that returns the full watershed boundary GeoDataFrame
of a given HUC level. If only a subset of HUCs is needed the pygeohydro.WBD
class should be used. The full dataset is downloaded from the National Maps' WBD staged products.irrigation_withdrawals
for retrieving estimated monthly water use for irrigation by 12-digit hydrologic unit in the CONUS for 2015 from ScienceBase.NID
, called data_units
for indicating the units of NID dataset variables.get_us_states
now accepts conus
as a subset_key
which is equivalent to contiguous
.get_us_states
to __init__
file, so it can be loaded directly, e.g., gh.get_us_states("TX")
.NWIS.get_streamflow
especially for large requests by refactoring the timezone handling.NID
class.