Streamkit Documentation
  • Home
  • API Reference

Examples

  • Downloading Data
  • Aligning NHD Data to DEM
  • Watershed Functions
  • Reach Delineation
  • Stream Network Analysis
  • Cross Sections
Streamkit Documentation
  • Examples
  • Reach Delineation
  • Edit on avkoehl/streamkit

In [6]:
Copied!
import geopandas as gpd
import rioxarray as rxr
import matplotlib.pyplot as plt

from streamkit import delineate_reaches, vectorize_streams, flow_accumulation_workflow
import geopandas as gpd import rioxarray as rxr import matplotlib.pyplot as plt from streamkit import delineate_reaches, vectorize_streams, flow_accumulation_workflow
In [2]:
Copied!
dem = rxr.open_rasterio("data/sample_dem.tif", masked=True).squeeze()
streams = rxr.open_rasterio("data/sample_streams.tif").squeeze()
cdem, flow_directions, flow_accumulation = flow_accumulation_workflow(dem)
dem = rxr.open_rasterio("data/sample_dem.tif", masked=True).squeeze() streams = rxr.open_rasterio("data/sample_streams.tif").squeeze() cdem, flow_directions, flow_accumulation = flow_accumulation_workflow(dem)
In [3]:
Copied!
reaches = delineate_reaches(streams, dem, flow_directions, flow_accumulation, penalty=5, min_length=500, smooth_window=5, threshold_degrees=1)
reaches = delineate_reaches(streams, dem, flow_directions, flow_accumulation, penalty=5, min_length=500, smooth_window=5, threshold_degrees=1)
In [4]:
Copied!
vreaches = vectorize_streams(reaches, flow_directions, flow_accumulation)
vstreams = vectorize_streams(streams, flow_directions, flow_accumulation)
vreaches = vectorize_streams(reaches, flow_directions, flow_accumulation) vstreams = vectorize_streams(streams, flow_directions, flow_accumulation)
In [5]:
Copied!
fig, axes = plt.subplots(1,2, figsize=(12,6))
vstreams['color_idx'] = range(len(vstreams))
vreaches['color_idx'] = range(len(vreaches))

dem.plot(ax=axes[0], add_colorbar=False)
vstreams.plot(ax=axes[0], column='color_idx', cmap='tab20', legend=False)
dem.plot(ax=axes[1], add_colorbar=False)
vreaches.plot(ax=axes[1], column='color_idx', cmap='tab20', legend=False)
fig, axes = plt.subplots(1,2, figsize=(12,6)) vstreams['color_idx'] = range(len(vstreams)) vreaches['color_idx'] = range(len(vreaches)) dem.plot(ax=axes[0], add_colorbar=False) vstreams.plot(ax=axes[0], column='color_idx', cmap='tab20', legend=False) dem.plot(ax=axes[1], add_colorbar=False) vreaches.plot(ax=axes[1], column='color_idx', cmap='tab20', legend=False)
Out[5]:
<Axes: title={'center': 'band = 1, spatial_ref = 0'}, xlabel='x', ylabel='y'>
No description has been provided for this image
Previous Next

Built with MkDocs using a theme provided by Read the Docs.
avkoehl/streamkit « Previous Next »