Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/perrygeo/python-rasterstats
Summary statistics of geospatial raster datasets based on vector geometries.
https://github.com/perrygeo/python-rasterstats
Last synced: 3 days ago
JSON representation
Summary statistics of geospatial raster datasets based on vector geometries.
- Host: GitHub
- URL: https://github.com/perrygeo/python-rasterstats
- Owner: perrygeo
- License: bsd-3-clause
- Created: 2013-09-18T06:44:29.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2023-11-20T18:28:44.000Z (about 1 year ago)
- Last Synced: 2024-06-11T19:56:01.901Z (7 months ago)
- Language: Python
- Homepage:
- Size: 1.05 MB
- Stars: 517
- Watchers: 33
- Forks: 114
- Open Issues: 32
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.txt
- License: LICENSE.txt
Awesome Lists containing this project
- awesome-earthobservation-code - RasterStats - Summary statistics of geospatial raster datasets based on vector geometries. `Python` (`Python` processing of optical imagery (non deep learning) / Python libraries related to EO)
README
rasterstats
===========|BuildStatus|_
``rasterstats`` is a Python module for summarizing geospatial raster datasets based on vector geometries.
It includes functions for **zonal statistics** and interpolated **point queries**. The command-line interface allows for
easy interoperability with other GeoJSON tools.Documentation
-------------
For details on installation and usage, visit the documentation at `http://pythonhosted.org/rasterstats `_.What does it do?
----------------
Given a vector layer and a raster band, calculate the summary statistics of each vector geometry.
For example, with a polygon vector layer and a digital elevation model (DEM) raster, compute the
mean elevation of each polygon... figure:: https://github.com/perrygeo/python-raster-stats/raw/master/docs/img/zones_elevation.png
:align: center
:alt: zones elevationCommand Line Quick Start
------------------------The command line interfaces to zonalstats and point_query
are `rio` subcommands which read and write geojson features.. code-block:: bash
$ fio cat polygon.shp | rio zonalstats -r elevation.tif
$ fio cat points.shp | rio pointquery -r elevation.tif
See the `CLI Docs `_. for more detail.
Python Quick Start
------------------For zonal statistics
.. code-block:: python
>>> from rasterstats import zonal_stats
>>> stats = zonal_stats("tests/data/polygons.shp", "tests/data/slope.tif")
>>> stats[0].keys()
dict_keys(['min', 'max', 'mean', 'count'])
>>> [f['mean'] for f in stats]
[14.660084635416666, 56.60576171875]and for point queries
.. code-block:: python
>>> from rasterstats import point_query
>>> point = {'type': 'Point', 'coordinates': (245309.0, 1000064.0)}
>>> point_query(point, "tests/data/slope.tif")
[74.09817594635244]Issues
------Find a bug? Report it via github issues by providing
- a link to download the smallest possible raster and vector dataset necessary to reproduce the error
- python code or command to reproduce the error
- information on your environment: versions of python, gdal and numpy and system memory.. |BuildStatus| image:: https://github.com/perrygeo/python-rasterstats/workflows/Rasterstats%20Python%20package/badge.svg
.. _BuildStatus: https://github.com/perrygeo/python-rasterstats/actions