Package

Description

Status

PyGeoHydro

Access NWIS, NID, HCDN 2009, NLCD, and SSEBop databases

Github Actions

PyGeoOGC

Send queries to any ArcGIS RESTful-, WMS-, and WFS-based services

Github Actions

PyGeoUtils

Convert responses from PyGeoOGC’s supported web services to datasets

Github Actions

PyNHD

Navigate and subset NHDPlus (MR and HR) using web services

Github Actions

Py3DEP

Access topographic data through National Map’s 3DEP web service

Github Actions

PyDaymet

Access Daymet for daily climate data both single pixel and gridded

Github Actions

A Portal To Hydrology And Climatology Data Through Python

PyPi Conda Version CodeCov ReadTheDocs Binder

Downloads CodeFactor black pre-commit Zenodo

NOTE

This software stack was formerly named hydrodata and since a R package with the same name already exists, we decided to renamed the project. Therefore, we renamed hydrodata to pygeohydro. Installing hydrodata will install pygeohydro from now on.

Features

This stack of six Python libraries are designed to aid in watershed analysis through web services. Currently, they only includes hydrology and climatology data within the US. Some of the major capabilities these packages are:

  • Easy access to many web services for subsetting data and returning the requests as masked xarrays or GeoDataFrames.

  • Splitting large requests into smaller chunks under-the-hood since web services usually limit the number of items per request. So the only bottleneck for subsetting the data is the local machine memory.

  • Navigating and subsetting NHDPlus database (both meduim- and high-resolution) using web services.

  • Cleaning up the vector NHDPlus data, fixing some common issues, and computing vector-based accumulation through a river network.

  • A URL inventory for some of the popular (and tested) web services.

  • Some utilities for manipulating the data and visualization.

You can visit examples webpage to see some example notebooks. You can also try this project without installing it on you system by clicking on the binder badge below the PyGeoHydro banner. A Jupyter notebook instance with the PyGeoHydro software stack pre-installed will be launched in your web browser and you can start coding!

Please note that this project is in early development stages, while the provided functionaities should be stable, changes in APIs are possible in new releases. But we appreciate it if you give this project a try and provide feedback. Contributions are most welcome.

Moreover, requests for additional databases and functionalities can be submitted via issue tracker.

https://raw.githubusercontent.com/cheginit/pygeohydro/master/docs/_static/example_plots.png

Documentation

Getting Started