Skip to main content

Universal network and tree visualisation library.

Project description

Github Actions PyPI - Version RTD Coverage Status pylint DOI

iplotx

Banner.

Visualise networks and trees in Python, with style.

Supports:

In addition to the above, any network or tree analysis library can register an entry point to gain compatibility with iplotx with no intervention from our side.

Installation

pip install iplotx

Quick Start

import networkx as nx
import matplotlib.pyplot as plt
import iplotx as ipx

g = nx.Graph([(0, 1), (1, 2), (2, 3), (3, 4), (4, 0)])
layout = nx.layout.circular_layout(g)
ipx.plot(g, layout)

Quick start image

Documentation

See readthedocs for the full documentation.

Gallery

See gallery.

Citation

If you use iplotx for publication figures, please cite:

F. Zanini. A universal tool for visualisation of networks and trees in Python. F1000Research 2025, 14:1377. https://doi.org/10.12688/f1000research.173131.1

Features

  • Plot networks from multiple libraries including networkx, igraph and graph-tool, using Matplotlib. ✅
  • Plot trees from multiple libraries such as cogent3, ETE4, skbio, biopython, and dendropy. ✅
  • Flexible yet easy styling, including an internal library of styles ✅
  • Interactive plotting, e.g. zooming and panning after the plot is created. ✅
  • Store the plot to disk in many formats (SVG, PNG, PDF, GIF, etc.). ✅
  • 3D network visualisation with depth shading. ✅
  • Efficient plotting of large graphs (up to ~1 million nodes on a laptop). ✅
  • Edit plotting elements after the plot is created, e.g. changing node colors, labels, etc. ✅
  • Animations, e.g. showing the evolution of a network over time. ✅
  • Mouse and keyboard interaction, e.g. hovering over nodes/edges to get information about them. ✅
  • Node clustering and covers, e.g. showing communities in a network. ✅
  • Edge tension, edge waypoints, and edge ports. ✅
  • Choice of tree layouts and orientations. ✅
  • Tree-specific options: cascades, subtree styling, split edges, etc. ✅
  • (WIP) Support uni- and bi-directional communication between graph object and plot object.🏗️

Authors

Fabio Zanini (https://fabilab.org)

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

iplotx-1.7.1.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

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

iplotx-1.7.1-py3-none-any.whl (100.6 kB view details)

Uploaded Python 3

File details

Details for the file iplotx-1.7.1.tar.gz.

File metadata

  • Download URL: iplotx-1.7.1.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for iplotx-1.7.1.tar.gz
Algorithm Hash digest
SHA256 4d4abdfa692ecb398726527ec23903ead0d2931aca114d93645fd7e561214dde
MD5 1cd89d30c76040eed0eca034b6825372
BLAKE2b-256 8a5a43d702a7d265cdd5883e34e41df1e4febb1aa3d00c85214c49d44bb38a2d

See more details on using hashes here.

Provenance

The following attestation bundles were made for iplotx-1.7.1.tar.gz:

Publisher: publish.yml on fabilab/iplotx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iplotx-1.7.1-py3-none-any.whl.

File metadata

  • Download URL: iplotx-1.7.1-py3-none-any.whl
  • Upload date:
  • Size: 100.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for iplotx-1.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 281e3ef9ad00c199e383210d1dec5f27853fb1e85d9bfac036e3b8591ee8a7e8
MD5 d63292e8bf39757713305c3f4a8c107d
BLAKE2b-256 8b414f29eab0b35fa81a15bfa3bb6b71e5fd8188fdd9eabbf933df41b8b10fa5

See more details on using hashes here.

Provenance

The following attestation bundles were made for iplotx-1.7.1-py3-none-any.whl:

Publisher: publish.yml on fabilab/iplotx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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