Skip to main content

A library for ploting chord diagrams

Project description

OpenChord

OpenChord is a Python library I am developing to plot beautiful chord diagrams for visualising networks and graphs. OpenChord uses the drawsvg library and can display figures in a Jupyter notebook or Jupyter lab. Other libraries for drawing chord diagram includes PlotAPI (paid), Bokeh (visible moire artifact), and Plotly (tedious).

Installation

I am working on hosting the library on PyPI.org. At the meantime, you can download the openchord.py file into your working directory/folder and use it that way. You will also need to install the drawsvg library (https://github.com/cduck/drawsvg) using the command

python3 -m pip install "drawsvg[all]"

Usage

Currently, the function only support symmetric adjacency matricies (i.e. weighted graph, non-directed)

import openchord as ocd

adjacency_matrix = [[ 3, 18,  9,  0, 23],
                    [18,  0, 12,  5, 29],
                    [ 9, 12,  0, 27, 10],
                    [ 0,  5, 27,  0,  0],
                    [23, 29, 10,  0,  0]]
labels = ['Emma', 'Isabella', 'Ava', 'Olivia', 'Sophia']

fig = ocd.Chord(adjacency_matrix, labels)
fig.show()

Color can be changed like so

fig.color_map = ['#636EFA', '#EF553B', '#00CC96', '#AB63FA', '#FFA15A', '#19D3F3', '#FF6692', '#B6E880', '#FF97FF', '#FECB52']
fig.show()

You can export the figure as an .svg file and open it in a vector graphics software such as Inkscape

fig.save_svg("figure.svg")

Chord diagram using OpenChord

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

openchord-0.1.1.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

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

openchord-0.1.1-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

Details for the file openchord-0.1.1.tar.gz.

File metadata

  • Download URL: openchord-0.1.1.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for openchord-0.1.1.tar.gz
Algorithm Hash digest
SHA256 72dae24e4888747631e9cf82949907426c491c25e4a2087e783c0aa688bf767f
MD5 9ece1f5f74f8ea4019e6a64e8fe39a18
BLAKE2b-256 8e3a5c07b020fbf1b445af333132b602da5e6bd413ad9d09a845ae41437db492

See more details on using hashes here.

File details

Details for the file openchord-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: openchord-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for openchord-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c09070862821884ac059855a0b4574746c585f4cfcef1a39b89e56171c2b1a70
MD5 352284082b17f645007b9a7f48fcbb65
BLAKE2b-256 bc88e581a6135d5e67161e3851468060144728f5b5616ef67d2e36b07017322f

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