hydrosensenet
An Open-Source Python Package for Optimal Hydrological Monitoring Network Design
⚠️ In active development
Installation
Requires Python >= 3.9.
pip install hydrosensenet
# With optional extras:
pip install "hydrosensenet[viz]" # map plotting (matplotlib, cartopy)
pip install "hydrosensenet[nwm]" # NWM streamflow download stack (fsspec, dask, pynhd, ...)
The core install covers network design, evaluation, and I/O.
NetworkDesignResult.plot() and the NWM download utilities tell you
which extra to install if it is missing.
Development
git clone https://github.com/future-water/hydrosensenet.git
cd hydrosensenet
pip install -e ".[dev]" # editable install with tests, linting, build tooling
pytest # run the test suite
Quick Start
Examples
- design_texas_gulf_baseline.ipynb - Baseline HUC2-scale design with data download and USGS network comparison
- design_texas_gulf_flexible.ipynb - Flexible planning: per-HUC6 batch design across sub-basins
- design_texas_gulf_risk.ipynb - Risk-aware design using FEMA flood-risk weights
Basic Usage
Try it immediately on the bundled sample basin (368 reaches of the lower Colorado River, Texas — NWM v3.0 daily streamflow):
from hydrosensenet import SensorNetworkDesigner, load_example_basin
streamflow_df, locations_gdf = load_example_basin()
designer = SensorNetworkDesigner(streamflow_df, locations_gdf)
result = designer.design_network(n_sensors=20)
result.print_summary()
Or with your own data:
from hydrosensenet import SensorNetworkDesigner
from hydrosensenet.io import load_streamflow
import geopandas as gpd
# Load data
streamflow_df = load_streamflow("streamflow_2000.parquet")
locations_gdf = gpd.read_file("gauges.geojson")
# Design network
designer = SensorNetworkDesigner(
streamflow_data=streamflow_df.values,
locations=locations_gdf,
location_labels=list(streamflow_df.columns)
)
result = designer.design_network(n_sensors=50, evaluate=True)
result.print_summary()
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hydrosensenet-0.2.0.tar.gz.
File metadata
- Download URL: hydrosensenet-0.2.0.tar.gz
- Upload date:
- Size: 68.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae82bd85d97e841446c7827d8683e558e80e55dfe6490aab2942e64d3bf1d3b6
|
|
| MD5 |
808faf0132d96ba3e53a0bd57408ea23
|
|
| BLAKE2b-256 |
e624a7b010b2d734d72fd3329e67b487889289ff24b3d1e256efccbcf6cc8aed
|
Provenance
The following attestation bundles were made for hydrosensenet-0.2.0.tar.gz:
Publisher:
publish.yml on future-water/hydrosensenet
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hydrosensenet-0.2.0.tar.gz -
Subject digest:
ae82bd85d97e841446c7827d8683e558e80e55dfe6490aab2942e64d3bf1d3b6 - Sigstore transparency entry: 2287317859
- Sigstore integration time:
-
Permalink:
future-water/hydrosensenet@fab5b44464cf0cb3f54c7a70baed92679f2b2f44 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/future-water
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fab5b44464cf0cb3f54c7a70baed92679f2b2f44 -
Trigger Event:
release
-
Statement type:
File details
Details for the file hydrosensenet-0.2.0-py3-none-any.whl.
File metadata
- Download URL: hydrosensenet-0.2.0-py3-none-any.whl
- Upload date:
- Size: 59.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68d4c80ee9e324d317cdf2e0ada3535e89bcfd8f3fa507893a3d09336ee05c96
|
|
| MD5 |
6b9a0201e505aef52d8c2a5689c17b23
|
|
| BLAKE2b-256 |
b6a772085c728d15d88d35b085a7a47fb24484dad065260d6157023c760c0ac8
|
Provenance
The following attestation bundles were made for hydrosensenet-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on future-water/hydrosensenet
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hydrosensenet-0.2.0-py3-none-any.whl -
Subject digest:
68d4c80ee9e324d317cdf2e0ada3535e89bcfd8f3fa507893a3d09336ee05c96 - Sigstore transparency entry: 2287317865
- Sigstore integration time:
-
Permalink:
future-water/hydrosensenet@fab5b44464cf0cb3f54c7a70baed92679f2b2f44 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/future-water
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fab5b44464cf0cb3f54c7a70baed92679f2b2f44 -
Trigger Event:
release
-
Statement type: