Open-source Python library to compute landscape metrics
Project description
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)
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)')
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
Release history Release notifications | RSS feed
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.1.0.tar.gz
(16.9 kB
view hashes)