Skip to main content

ObjectNat is an open-source library created for geospatial analysis created by IDU team

Project description

Object-oriented Network Analysis Tools

Code style: black PyPI version CI Coverage License Docs

РИДМИ (Russian)

ObjectNat logo

ObjectNat is an open-source library developed by the IDU team for spatial and network analysis in urban studies. The library provides tools for analyzing accessibility, visibility, noise propagation, and service provision. —-

Key Features

Each feature includes a Jupyter Notebook example and full documentation.

  1. Isochrones and Transport Accessibility

    Isochrones represent areas reachable from an origin point within a specified time along a transport network. This feature allows the analysis of transport accessibility using pedestrian, road, public transport, or multimodal graphs.

    The library supports several methods for building isochrones:

    • Basic isochrones: display a single zone reachable within a specified time.

    • Step isochrones: divide the accessibility area into time intervals (e.g., 3, 5, 10 minutes).

    📘 Example 🔗 Documentation

  2. Graph Coverage Zones from Points

    A function for generating coverage areas from a set of origin points using a transport network. It computes the area reachable from each point by travel time or distance, then builds polygons using Voronoi diagrams and clips them by a given boundary if specified.

    📘 Example 🔗 Documentation

  3. Service Provision Analysis

    A function to evaluate how well residential buildings and their populations are provided with services (e.g., schools, clinics) that have limited capacity and a defined accessibility threshold (in minutes or meters). The function models the balance between supply and demand, assessing how well services meet the needs of nearby buildings within an acceptable time.

    📘 Example 🔗 Documentation

  4. Visibility Analysis

    A function for evaluating visibility from a given point or set of points to nearby buildings within a given radius. It is used to assess visual accessibility in urban environments. A module is also implemented for computing visibility coverage zones using a dense observer grid (recommended ~1000 points with a 10–20 m spacing). Points can be generated along the transport network and distributed across its edges.

    📘 Example 🔗 Documentation

  5. Noise Simulation & Noise Frame

    Simulation of noise propagation from sources, taking into account obstacles, vegetation, and environmental factors.

    📘 Example 🔗 Documentation 🧠 Detailed theory

  6. Point Clusterization

    A function for constructing cluster polygons based on a set of points using:

    • Minimum distance between points.

    • Minimum number of points in a cluster.

    The function can also compute the ratio of service types in each cluster for spatial analysis of service composition.

    📘 Example 🔗 Documentation


City Graphs via IduEdu

For optimal performance, ObjectNat is recommended to be used with graphs created by the IduEdu library.

IduEdu is an open-source Python library designed for building and processing complex urban networks based on OpenStreetMap data.

IduEdu can be installed via pip:

pip install IduEdu

Example usage:

from iduedu import get_4326_boundary, get_intermodal_graph

poly = get_4326_boundary(osm_id=1114252)
G_intermodal = get_intermodal_graph(territory=poly, clip_by_territory=True)

Installation

ObjectNat can be installed via pip:

pip install ObjectNat

Configuration

You can adjust logging and progress bar output using the config module:

from objectnat import config

config.change_logger_lvl("INFO")   # mute debug logs
config.set_enable_tqdm(False)      # disable tqdm progress bars

Contacts


Publications

Coming soon.

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

objectnat-1.4.1.tar.gz (43.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

objectnat-1.4.1-py3-none-any.whl (53.9 kB view details)

Uploaded Python 3

File details

Details for the file objectnat-1.4.1.tar.gz.

File metadata

  • Download URL: objectnat-1.4.1.tar.gz
  • Upload date:
  • Size: 43.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.11.14 Linux/6.11.0-1018-azure

File hashes

Hashes for objectnat-1.4.1.tar.gz
Algorithm Hash digest
SHA256 bcad9d5069876873df9972ecf3989972e8524e3a489dddba323bd496ae9f2361
MD5 f2f1b2b186ad9e2db058561f6abc20ba
BLAKE2b-256 95a53738b0a35b0c4e3a9dcae982499a8a41730042df9641b35b97dfe3b3d59e

See more details on using hashes here.

File details

Details for the file objectnat-1.4.1-py3-none-any.whl.

File metadata

  • Download URL: objectnat-1.4.1-py3-none-any.whl
  • Upload date:
  • Size: 53.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.11.14 Linux/6.11.0-1018-azure

File hashes

Hashes for objectnat-1.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0397f573703e6c91f92e6b02e29f898ffb60346049de4ebaea7a117e0a28d58f
MD5 bb750a39121e7f7a900d9cd722eec2f5
BLAKE2b-256 c8f9048b46eeb988fcaeb2ad6b41aebf72380362e9798b28e83f6c63bef7735e

See more details on using hashes here.

Supported by

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