Skip to main content

Urban Morphology Measuring Toolkit

Project description

momepy

Documentation Status Build Status Build status codecov CodeFactor DOI

momepy: urban morphology measuring toolkit

Introduction

Momepy is a library for quantitative analysis of urban form - urban morphometrics. It is built on top of GeoPandas, PySAL and networkX.

momepy stands for Morphological Measuring in Python

Some of the functionality that momepy offers:

  • Measuring dimensions of morphological elements, their parts, and aggregated structures.
  • Quantifying shapes of geometries representing a wide range of morphological features.
  • Capturing spatial distribution of elements of one kind as well as relationships between different kinds.
  • Computing density and other types of intensity characters.
  • Calculating diversity of various aspects of urban form.
  • Capturing connectivity of urban street networks
  • Generating relational elements of urban form (e.g. morphological tessellation)

Momepy aims to provide a wide range of tools for a systematic and exhaustive analysis of urban form. It can work with a wide range of elements, while focused on building footprints and street networks.

Momepy is a result of ongoing research of Urban Design Studies Unit (UDSU) supported by the Axel and Margaret Ax:son Johnson Foundation as a part of “The Urban Form Resilience Project” in partnership with University of Strathclyde in Glasgow, UK.

Comments, suggestions, feedback, and contributions, as well as bug reports, are very welcome.

Getting Started

Quick and easy getting started guide is part of the User Guide.

Documentation

Documentation of momepy is available at docs.momepy.org.

User Guide

User guide with examples of momepy usage is available at guide.momepy.org.

Examples

coverage = momepy.AreaRatio(tessellation, buildings, left_areas=tessellation.area,
                            right_areas='area', unique_id='uID')
tessellation['CAR'] = coverage.series

Coverage Area Ratio

area_simpson = momepy.Simpson(tessellation, values='area',
                              spatial_weights=sw3,
                              unique_id='uID')
tessellation['area_simpson'] = area_simpson.series

Local Simpson's diversity of area

G = momepy.straightness_centrality(G)

Straightness centrality

How to cite

To cite momepy please use following software paper published in the JOSS.

Fleischmann, M. (2019) ‘momepy: Urban Morphology Measuring Toolkit’, Journal of Open Source Software, 4(43), p. 1807. doi: 10.21105/joss.01807.

BibTeX:

@article{fleischmann_2019,
    author={Fleischmann, Martin},
    title={momepy: Urban Morphology Measuring Toolkit},
    journal={Journal of Open Source Software},
    year={2019},
    volume={4},
    number={43},
    pages={1807},
    DOI={10.21105/joss.01807}
}

Install

You can install momepy using Conda from conda-forge (recommended):

conda install -c conda-forge momepy

or from PyPI using pip:

pip install momepy

See the installation instructions for detailed instructions. Momepy depends on python geospatial stack, which might cause some dependency issues.

Contributing to momepy

Contributions of any kind to momepy are more than welcome. That does not mean new code only, but also improvements of documentation and user guide, additional tests (ideally filling the gaps in existing suite) or bug report or idea what could be added or done better.

All contributions should go through our GitHub repository. Bug reports, ideas or even questions should be raised by opening an issue on the GitHub tracker. Suggestions for changes in code or documentation should be submitted as a pull request. However, if you are not sure what to do, feel free to open an issue. All discussion will then take place on GitHub to keep the development of momepy transparent.

If you decide to contribute to the codebase, ensure that you are using an up-to-date master branch. The latest development version will always be there, including a significant part of the documentation (powered by sphinx). The user guide is located in the separate GitHub repository martinfleis/momepy-guide and is powered by Jupyter book.

Details are available in the documentation.

Get in touch

If you have a question regarding momepy, feel free to open an issue on GitHub. Eventually, you can contact us on dev@momepy.org.


Copyright (c) 2018-2019 Martin Fleischmann, University of Strathclyde, Urban Design Studies Unit

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

momepy-0.2.1.tar.gz (238.7 kB view details)

Uploaded Source

Built Distribution

momepy-0.2.1-py3-none-any.whl (224.4 kB view details)

Uploaded Python 3

File details

Details for the file momepy-0.2.1.tar.gz.

File metadata

  • Download URL: momepy-0.2.1.tar.gz
  • Upload date:
  • Size: 238.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0.post20200311 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.2

File hashes

Hashes for momepy-0.2.1.tar.gz
Algorithm Hash digest
SHA256 24ca5c041e025f08a8efd10baa46fe9eb1bd12fc1ed5c372a1727f9ed47d39a5
MD5 bbb6ae65ad504402fb89e9885ba2574b
BLAKE2b-256 43dc86f9768a01b21930a36ef8a8baf446bf0790a84a1ad331187833e85db1ff

See more details on using hashes here.

Provenance

File details

Details for the file momepy-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: momepy-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 224.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0.post20200311 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.2

File hashes

Hashes for momepy-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cfd4042a2d61dec7a0aad12f7c81ce8e1783cbb7f8bd57140f400531d0655d6d
MD5 98dfd349e29a9293b6e092172ffcc80c
BLAKE2b-256 6d5dfae0d253b55b60de6cd09a7741a8e5d57eaa87554fd65acf81ed6d163cb7

See more details on using hashes here.

Provenance

Supported by

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