Skip to main content

Land Use Projector

A Python tool for projecting land-use change. It fits development potential from land-use maps and driver rasters (random forest, or gradient boosting), then allocates the demanded change with a patch-based cellular automaton. The method follows Liang et al. (2021); see Citing.

Install

pip install landuse-projector            # Python 3.10 or newer
pip install "landuse-projector[viz,tune]"  # optional plots and tuning

Check it with lup --version.

Quick start

Write experiment.yaml next to a data/ folder with your maps and a folder of driver rasters:

classes: {1: Cropland, 2: Forest, 3: Built-up}
calibration: {t0: data/lulc_2010.tif, t1: data/lulc_2020.tif}
potential: {method: leas, drivers: data/drivers, n_trees: 50, sample_rate: 0.05}
demand: {method: from_map, map: data/lulc_2030_target.tif}
allocation:
  method: cars
  start: data/lulc_2020.tif
  neighbor_weights: [1.0, 0.5, 0.5]
  transition_matrix: [[1,1,1],[1,1,1],[0,0,1]]
validate: {observed: data/lulc_2030_target.tif}
seed: 1
runs: 3
output: out

Then run lup run experiment.yaml. Each run writes its simulation map and metrics under out/, with a summary.csv (one row per run), a provenance.json that records the config and versions, and a run.log. The same config and seed give identical results for any thread count.

Other commands: lup convert, expansion, persist, leas, cars, validate kappa, validate fom, benchmark, tune, import-cars. Run lup --help for all of them.

Documentation

  • docs/guide.md: the config reference and commands.

Citing

Cite this software with CITATION.cff (GitHub shows a "Cite this repository" button). For the methodology, cite:

Liang, X., Guan, Q., Clarke, K. C., Liu, S., Wang, B., Yao, Y. (2021). Understanding the drivers of sustainable land expansion using a patch-generating land use simulation (PLUS) model: A case study in Wuhan, China. Computers, Environment and Urban Systems, 85, 101569.

License

BSD 3-Clause. See LICENSE.

Metadata

Release files for landuse-projector 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for landuse-projector 0.2.0
File Size Uploaded Provenance Actions
landuse_projector-0.2.0.tar.gz 170.4 kB Without provenance Details for landuse_projector-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for landuse-projector 0.2.0
File Interpreter ABI Platform Actions
landuse_projector-0.2.0-py3-none-any.whl Python 3 none any Details for landuse_projector-0.2.0-py3-none-any.whl

Total release size: 288.8 kB

Release files / landuse_projector-0.2.0.tar.gz

Download URL landuse_projector-0.2.0.tar.gz
Size 170.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4ccb87808ead45237462ce6e798b9d4c071b35466e58eda69ebe112ad246c1cf
BLAKE2b-256 checksum
How to use checksums
19853688c7479abbb07e7365542e6aac3b29ab05245df41106d65a29d6cdd1fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.12

Release files / landuse_projector-0.2.0-py3-none-any.whl

Download URL landuse_projector-0.2.0-py3-none-any.whl
Size 118.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
15ff2906e9e2fa79d4c1e3f03498ae7b82d5f1e1759c3f25a91fe8fcb88787e9
BLAKE2b-256 checksum
How to use checksums
67c811165053d90c68a54e13e1d25df2ee26a745278e9444f04856c10bb9768b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.12

Security for landuse-projector 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page