riverrem
Make river relative elevation models (REM) and REM visualizations from an input digital elevation model (DEM).
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.0%) to scientific vocabulary
Repository
Make river relative elevation models (REM) and REM visualizations from an input digital elevation model (DEM).
Basic Info
Statistics
- Stars: 113
- Watchers: 8
- Forks: 40
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
RiverREM
RiverREM is a Python package for automatically generating river relative elevation model (REM) visualizations from nothing but an input digital elevation model (DEM). The package uses the OpenStreetMap API to retrieve river centerline geometries over the DEM extent. Interpolation of river elevations is automatically handled using a sampling scheme based on raster resolution and river sinuosity to create striking high-resolution visualizations without interpolation artefacts straight out of the box and without additional manual steps. The package also contains a helper class for creating DEM raster visualizations. See the documentation pages for more details.
For more information on REMs and this project see this OpenTopography blog post.

Installation
Install method 1 (recommended): New environment with conda/mamba
Make a new Python environment with RiverREM installed:
bash
conda create -n rem_env riverrem
The above command creates a new Python environment named rem_env with the riverrem package installed.
[!NOTE]
mambais recommended overcondaorpipas it is able to solve environment dependencies quickly and robustly. If you are usingmamba, replacecondawithmambain the above command.
The environment can then be activated:
bash
conda activate rem_env
Alternatively, the environment can be linked to an IDE like PyCharm.
Install method 2: Existing environment
Install via conda/mamba:
bash
conda install -c conda-forge riverrem
Install method 3: Repository clone
Clone this repo and create a conda environment from the environment.yml:
bash
git clone https://github.com/opentopography/RiverREM.git
cd RiverREM
conda env create -n rem_env --file environment.yml
Usage
- Get a DEM for the area of interest. Some sources for free topographic data:
- Create an REM visualization with default arguments:
python
from riverrem.REMMaker import REMMaker
# provide the DEM file path and desired output directory
rem_maker = REMMaker(dem='/path/to/dem.tif', out_dir='/out/dir/')
# create an REM
rem_maker.make_rem()
# create an REM visualization with the given colormap
rem_maker.make_rem_viz(cmap='topo')
Options for adjusting colormaps, shading, interpolation parameters, and more are detailed in the documentation.

Troubleshooting
- No river in DEM extent or inaccurate centerline: Use the OSM editor to create/modify river centerline(s). Alternatively, a user-provided centerline can be input to override the OSM centerline. See the documentation for more details.
Issues
Submitting issues, bugs, or suggested feature improvements are highly encouraged for this repository.
References
This is the OpenTopography fork of https://github.com/klarrieu/RiverREM by Kenneth Larrieu. This package was made possible and inspired by the following:
- The beautiful REMs popularized by Daniel Coe
- DahnJ's implementation of REMs using xarray
- Geoff Boeing's OSMnx Python package leveraging the OSM Overpass API
- The UNAVCO Student Internship Program
- The team at OpenTopography for supporting this effort under the following U.S. National Science Foundation award numbers: 1948997, 1948994, 1948857.

Owner
- Name: Kenneth Larrieu
- Login: klarrieu
- Kind: user
- Location: California
- Company: UC Davis Environmental Dynamics Lab
- Repositories: 3
- Profile: https://github.com/klarrieu
😎
Citation (CITATION.cff)
cff-version: 1.0.0 message: "If you use this software, please cite it as below." authors: - family-names: "Larrieu" given-names: "Kenneth" orcid: "https://orcid.org/0000-0003-1706-3879" title: "RiverREM" version: 1.1.0 date-released: 2022-08-13 url: "https://github.com/OpenTopography/RiverREM"
GitHub Events
Total
- Watch event: 11
- Push event: 18
- Fork event: 1
Last Year
- Watch event: 11
- Push event: 18
- Fork event: 1
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 1
- Total pull requests: 11
- Average time to close issues: about 8 hours
- Average time to close pull requests: less than a minute
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 8.0
- Average comments per pull request: 0.0
- Merged pull requests: 11
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- CetINV (1)
Pull Request Authors
- klarrieu (11)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 33 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 1
- Total maintainers: 1
pypi.org: riverrem
Make river relative elevation models (REM) and REM visualizations from an input digital elevation model (DEM).
- Homepage: https://github.com/klarrieu/RiverREM
- Documentation: https://riverrem.readthedocs.io/
- License: MIT License
-
Latest release: 0.0.1
published almost 4 years ago
Rankings
Maintainers (1)
Dependencies
- bottleneck
- cmocean
- dataclasses
- gdal >=3.7,<3.9
- geopandas
- numexpr
- osmnx <2.0,>=1.3
- pandas
- python >=3.6
- requests
- scipy >=1.6.0
- seaborn
- shapely >=2.0