Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

CI Docs

ProximityGraphs

ProximityGraphs is a Python-based computational geometry package for constructing and analyzing proximity and biological graphs, facilitating computational experimentation. It provides tools to generate and transform random and structured point sets and to build graphs from them. Its current scope comprises 13 geometric graphs, most of them proximity graphs—such as the Delaunay triangulation, the Gabriel graph, the Relative Neighborhood graph, and the Sphere-of-Influence graph—as well as the complete graph, the Erdős-Rényi random graph and two bio-inspired graphs.

Installation

We are on pipi! https://pypi.org/project/proximitygraphs/

pip install proximitygraphs

Or the editable on github

python -m pip install -e ".[dev, docs, gis]"

and to update the page

python -m sphinx -b html docs/source docs/build/html

Before pushing

python -m pytest
python -m ruff check .

Quickstart

import proximitygraphs as pg

points = pg.SetPoints.grid(shape=(3, 3))
mst = pg.MST(points)
unit_disk = pg.Unit_Disk(points, dist_max=1.01)

print(points.n)                   # 9 vertices
print(mst.m)                      # 8 edges
print(unit_disk.graph.get_edgelist())

A runnable example script is available at examples/quickstart.py.

API Overview

The main entry points are:

  • pg.SetPoints for generating or loading planar point sets.
  • pg.GeometricGraph for graph operations, analysis helpers, and visualization.
  • pg.DelaunayG, pg.GG, pg.RNG, pg.MST, pg.Unit_Disk, pg.Alpha_Shape, and related classes for proximity graph construction.
  • pg.Experiment for repeated simulations and metric aggregation.
  • pg.PhysarumGraph for the package's current bio-inspired graph model.

GIS helpers such as SetPoints.from_geopandas() and GeometricGraph.to_gpd_lines() require the optional gis extra.

Reproducibility / Installation

This repository is configured and tested for:

  • Windows local development
  • GitHub Actions on Ubuntu
  • Python 3.10, 3.11, 3.12, 3.13 and 3.14

The project uses a src layout: source code lives in src/proximitygraphs/, while the public import remains import proximitygraphs as pg.

The recommended validation sequence is:

python -m pip install -e ".[dev]"
python -m pytest -q
python -m ruff check .
python -m ruff format --check .

Citation

Software citation metadata is provided in CITATION.cff. A JOSS-ready manuscript draft is provided in paper.md.

The Zenodo DOI is still pending. Until archival metadata is finalized, use the versioned software citation in CITATION.cff and update it after a DOI is minted.

License

ProximityGraphs is distributed under the MIT License. See LICENSE.

Reporting Issues

Bug reports and feature requests should be filed through GitHub Issues. Security-sensitive issues should follow SECURITY.md.

Contributing

Development setup and contribution expectations are documented in CONTRIBUTING.md.

Metadata

Release files for proximitygraphs 0.1.0a2

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

Source distribution (sdist)

Source distribution for proximitygraphs 0.1.0a2
File Size Uploaded
proximitygraphs-0.1.0a2.tar.gz 13.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for proximitygraphs 0.1.0a2
File Interpreter ABI Platform
proximitygraphs-0.1.0a2-py3-none-any.whl Python 3 none any Details

Total release size: 13.5 MB

Release files / proximitygraphs-0.1.0a2.tar.gz

Download URL proximitygraphs-0.1.0a2.tar.gz
Size 13.4 MB
Tags Source
SHA-256 checksum
How to use checksums
28f60192165173421f5f4c68bd80ed29c48d7fe4f594107bae0fe335a8242b96
BLAKE2b-256 checksum
How to use checksums
e5bb9a101f483d2ad11f9a899c5df60cdb902f9d0673a6b5b8459665c9ed7f0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 28, 2026.

Transparency log

Release files / proximitygraphs-0.1.0a2-py3-none-any.whl

Download URL proximitygraphs-0.1.0a2-py3-none-any.whl
Size 98.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bc2dd332afe5b2336221e00e754c6020717a8e20792e56a6a26b99c748415e3d
BLAKE2b-256 checksum
How to use checksums
3129ba896e016d55511951e1f615c30f1c5adb576c91a146b60c1992efc3b882
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 28, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0a2 This release

2 release files

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