Skip to main content

Open-source Python library to compute landscape metrics

Project description

PyPI version fury.io Build Status Coverage Status GitHub license Binder

PyLandStats

Overview

Open-source Pythonic library to compute landscape metrics within the PyData stack (NumPy, pandas, matplotlib...)

Features

Read GeoTiff files of land use/cover

import pylandstats as pls

ls = pls.read_geotiff('data/vaud_g100_clc00_V18_5.tif')

ls.plot_landscape(legend=True)

landscape-vaud

Compute pandas DataFrames of landscape metrics at the patch, class and landscape level

patch_metrics_df = ls.compute_patch_metrics_df()
patch_metrics_df.head()
patch_id class_val area perimeter perimeter_area_ratio shape_index fractal_dimension
0 1 115 10600 92.17 2.409 1.130
1 1 13 2600 200.00 1.625 1.100
2 1 2 600 300.00 1.000 1.012
3 1 69 6000 86.96 1.765 1.088
4 1 76 8800 115.79 2.444 1.137
class_metrics_df = ls.compute_class_metrics_df(metrics=['proportion_of_landscape', 'edge_density'])
class_metrics_df
class_val proportion_of_landscape edge_density
1 7.702 4.459
2 92.298 4.459

Also analyze the spatio-temporal evolution of the landscape:

input_fnames = [
    'data/vaud_g100_clc00_V18_5.tif',
    'data/vaud_g100_clc06_V18_5a.tif',
    'data/vaud_g100_clc12_V18_5a.tif'
]

sta = pls.SpatioTemporalAnalysis(
    input_fnames, metrics=[
        'proportion_of_landscape',
        'edge_density',
        'fractal_dimension_am',
        'landscape_shape_index',
        'shannon_diversity_index'
    ], classes=[1], dates=[2000, 2006, 2012], 
)

fig, axes = sta.plot_metrics(
    class_val=1,
    metrics=['proportion_of_landscape', 'edge_density', 'fractal_dimension_am'],
    num_cols=3)
fig.suptitle('Class-level metrics (urban)')

spatiotemporal-analysis

See the pylandstats-notebooks repository for a more complete overview

Installation

To install use pip:

$ pip install pylandstats

Or clone the repo:

$ git clone https://github.com/martibosch/pylandstats.git
$ python setup.py install

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pylandstats-0.3.0.tar.gz (20.8 kB view details)

Uploaded Source

File details

Details for the file pylandstats-0.3.0.tar.gz.

File metadata

  • Download URL: pylandstats-0.3.0.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for pylandstats-0.3.0.tar.gz
Algorithm Hash digest
SHA256 47dcdba83ed4a07664123a7c8150af4db625ffd4e2dbf6b0dd2fad4b19020b81
MD5 54214a5ff77fda078e3bb443a8698477
BLAKE2b-256 c8b2cf2b8d5178c774ae0ea0d261d0071a1307977f21f99fc287d2bb5a0a3d81

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page