A curate list of GIS tools and resources for river and watershed delineation using Python.
Libraries:
- PDAL: A C++ BSD library for python for translating and manipulating point cloud data
- PyLidar: A set of Python modules which makes it easy to write lidar processing code in Python
- libLAS: A C/C++ library for python for reading and writing the very common LAS LiDAR format
- laspy: A pythonic interface for reading/modifying/creating .LAS LIDAR files
- GDAL: A translator library for raster and vector geospatial data formats
- GeoPandas: Extends the datatypes used by pandas to allow spatial operations on geometric types
- Rtree: Spatial indexing for Python
- Shapely: Manipulation and analysis of geometric objects
- Descartes: Use Shapely or GeoJSON-like geometric objects as matplotlib paths and patches
- Fiona: OGR’s neat, nimble, no-nonsense API for Python programmers
Packages:
- WikiWatershed: Analyze mapped watershed data, visualize monitoring data, and run model simulations of human impacts on water quality
- KeckCaves: A set of application and libraries for geo data visualization
- Whitebox GAT: An open-source desktop GIS and remote sensing software package for general applications of geospatial analysis and data visualization
- WhiteboxTools: Performs common GIS analysis operations, such as cost-distance analysis, distance buffering, and raster reclassification
- WetChannelExtraction: Extract wet segments using high resolution DEMs and Intensity Rasters.
- DrainageNetworkExtraction: Extract channel and valley networks from high resolution DEMs
- TauDEM: A suite of Digital Elevation Model (DEM) tools for the extraction and analysis of hydrologic information from topography as represented by a DEM
- GeoAlchemy: Provides extensions to SQLAlchemy for working with spatial databases.
- PROJ.4 - Cartographic Projections Library: A generic coordinate transformation software, that transforms geospatial coordinates from one coordinate reference system (CRS) to another
- PyProj: Python interface to PROJ4 library for cartographic transformations
- pysheds: Simple and fast watershed delineation in python
- NetworkX: a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks
Books:
- Geoprocessing with Python: teaches how to use the Python programming language, along with free and open source tools, to read, write, and process geospatial data
- Source code: Code for the book Open source geoprocessing with Python