Skip to main content

No project description provided

Project description

ugraph

PyPI version Downloads black isort License: MIT mypyc flake8 pylint

Extend your graphs beyond structure—add meaning with ugraph.

ugraph builds on igraph to provide a powerful way to define and work with custom node and link types in your graphs. This package is ideal for those who need more than just graph structure—it empowers you to combine graph data with rich information via Python dataclasses, and comes with built-in support for JSON storage and 3D visualizations.

Because your graphs aren't just for you
(igraph → ugraph)


Why ugraph?

Graphs often represent more than their edges and nodes—they carry data, behaviors, and relationships that need to be understood in context. ugraph bridges this gap by enabling:

  • Custom node and link classes: Add type-safe attributes and behaviors to your graph elements.
  • Data serialization: Easily save and load your graphs in JSON format for persistence and sharing.
  • 3D visualization: Render interactive, browser-based 3D visualizations in HTML using Plotly.

With ugraph, your graphs are as understandable and maintainable as the data they represent.


Features at a Glance

  • Custom Classes: Define your nodes and links as Python dataclasses, allowing for type hints, IDE autocompletion, and type checking.
  • Serialization: Store and reload your networks seamlessly using JSON files.
  • Interactive Visualization: Generate 3D plots of your graphs in HTML for better insights and presentation.

Disclaimer

ugraph is not intended for creating graph figures or visualizations (e.g., bar charts, scatter plots). It is a tool for working with graph data structures (nodes and links) and enhancing their usability.


Installation

Install ugraph using pip:

pip install ugraph

(if you need igraph's cairo-based plotting, use pip install ugraph[cairo])


Quick Start

ugraph works similarly to igraph, with the added flexibility of custom node and link types. You can define attributes like coordinates, IDs, or any other domain-specific data in a type-safe and Pythonic way.

Explore usage examples in the examples directory, or start with a minimal example.

Documentation

For an extended introduction and code snippets, see docs/getting_started.md.


Credits

This project builds upon the excellent igraph library. We acknowledge and thank the igraph community for their foundational work.


License

See the LICENSE file for rights and limitations (MIT).

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

ugraph-0.9.1.tar.gz (15.7 kB view details)

Uploaded Source

Built Distribution

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

ugraph-0.9.1-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

File details

Details for the file ugraph-0.9.1.tar.gz.

File metadata

  • Download URL: ugraph-0.9.1.tar.gz
  • Upload date:
  • Size: 15.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.5 Windows/11

File hashes

Hashes for ugraph-0.9.1.tar.gz
Algorithm Hash digest
SHA256 96454c36f463e6ebc753a36b684dbc8dea35025a5f2336e666f7d45bb2e3d2f0
MD5 32941485b9a72f3f1e66e4c4071013cb
BLAKE2b-256 e2d44c4f48675d2fe10b26173d8846a99526a7a0612978de5044e84223716896

See more details on using hashes here.

File details

Details for the file ugraph-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: ugraph-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 18.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.5 Windows/11

File hashes

Hashes for ugraph-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ec88ec4eb81c6d79fc61108eda5a773fdbbe5e1415c79749f05d1bf20f13820f
MD5 41f00ee9585649fad1de12581f2a5bcb
BLAKE2b-256 917ae43983e774c729f9f4f83a7bda6d942250b1505737d2505286be77fc58e2

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