Object-oriented Network Analysis Tools
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.
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 UrbanGraph objects prepared by IduEdu.
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
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
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. ObjectNat 2.0 returns a structured ProvisionResult with a sparse flow matrix and materialization helpers for buildings, services, and link geometries.
📘 Example 🔗 Documentation
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. The unified get_visibility API supports accurate and simplified methods, including parallel execution for batches of observer points.
📘 Example 🔗 Documentation
Noise Simulation & Noise Frame
Simulation of noise propagation from sources, taking into account obstacles, vegetation, and environmental factors.
City Graphs via IduEdu
For optimal performance, ObjectNat is recommended to be used with graphs created by the IduEdu library. Graph-based ObjectNat methods consume iduedu.UrbanGraph directly; ObjectNat does not build NetworkX graphs internally.
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) urban_graph = 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
Migration to ObjectNat 2.0
ObjectNat 2.0 replaces NetworkX-based graph inputs with iduedu.UrbanGraph, renames accessibility functions, and returns ProvisionResult from service provision. See the migration guide in the documentation: Migration 1.x to 2.0.
Contacts
NCCR — National Center for Cognitive Research
IDU — Institute of Design and Urban Studies
Natalya Chichkova — Project Manager
Danila Oleynikov (Donny) — Lead Software Engineer
Publications
Coming soon.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file objectnat-2.0.0.tar.gz.
File metadata
- Download URL: objectnat-2.0.0.tar.gz
- Upload date:
- Size: 38.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bba68142389fa9f8937b37c2eedd3fa066f17d4a751540a8497eac8710a9fcd4
|
|
| MD5 |
c67a9a998d29fe96aa9770cd11525d43
|
|
| BLAKE2b-256 |
17eb78b867914723e498fd3349a37e43528bc19091fa66b87d82c078e9479cb9
|
Provenance
The following attestation bundles were made for objectnat-2.0.0.tar.gz:
Publisher:
release.yml on IDUclub/ObjectNat
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
objectnat-2.0.0.tar.gz -
Subject digest:
bba68142389fa9f8937b37c2eedd3fa066f17d4a751540a8497eac8710a9fcd4 - Sigstore transparency entry: 2137758984
- Sigstore integration time:
-
Permalink:
IDUclub/ObjectNat@8d9ff4926875b27c32f47a11c5bc70d3274b498e -
Branch / Tag:
refs/heads/master - Owner: https://github.com/IDUclub
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@8d9ff4926875b27c32f47a11c5bc70d3274b498e -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file objectnat-2.0.0-py3-none-any.whl.
File metadata
- Download URL: objectnat-2.0.0-py3-none-any.whl
- Upload date:
- Size: 48.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d09ca39c71a08f398602625975de9531b6d9364c572a0f000aa0f1c1737ea647
|
|
| MD5 |
c109324e70927c3d8439b003c209169d
|
|
| BLAKE2b-256 |
ef00931982a29beccede98eb1b5849872757c56297aabdec41473f7359d2e8fb
|
Provenance
The following attestation bundles were made for objectnat-2.0.0-py3-none-any.whl:
Publisher:
release.yml on IDUclub/ObjectNat
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
objectnat-2.0.0-py3-none-any.whl -
Subject digest:
d09ca39c71a08f398602625975de9531b6d9364c572a0f000aa0f1c1737ea647 - Sigstore transparency entry: 2137759373
- Sigstore integration time:
-
Permalink:
IDUclub/ObjectNat@8d9ff4926875b27c32f47a11c5bc70d3274b498e -
Branch / Tag:
refs/heads/master - Owner: https://github.com/IDUclub
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@8d9ff4926875b27c32f47a11c5bc70d3274b498e -
Trigger Event:
workflow_run
-
Statement type: