Skip to main content

Add your description here

Project description

BandGraph

License: MIT

Description

Given a list of bands and artists belonging to a musical movement, create a graph of memberships and collaborations using networkx and render interactively with ipysigma.

Data is is stored as text files with several rows, each of them with the following format: band;members;collaborations. members and collaborations are lists of musicians or bands separated by commas ,. collaborations includes collaborations between bands and musicians from other projects, and also between bands in songs or split albums. Most of info has been extracted from Wikipedia, Discogs, Rate Your Music, Spotify and other sources.

See a web application with examples here.

Installation

To install the library, run:

pip install bandgraph

Get started

Load the data

from bandgraph import load_data

filename = "jazz.txt"
dataframe = load_data(filename)

Generate the graph

from bandgraph import create_graph

graph = create_graph(dataframe)

Render the graph with ipysigma

from ipysigma import Sigma

args = {"node_size":0,
        "node_color":"type",
        "edge_color":"type",
        "label_density":10,
        "node_border_color_from":"node",
        "start_layout":2,
        "hide_info_panel":True,
        "background_color":"rgb(255, 255, 255)"}

sig = Sigma(graph, **args)

Examples

See a web application with examples here.

Example graph, showing the Jazz scene

Jazz

To do

  • Improve graph visualization, using ipysigma
  • Create web application
  • Fix visualization of webpage in mobile phone
  • Create library and publish in pypi
  • Improve colors and visualization
  • Write web scrapping tool to parse data from Rate Your Music and/or Wikipedia.

Contributing

If you want to include new data or have comments or suggestions, feel free to create a pull request or contact me at pablo.villanueva.domingo@gmail.com.

License

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

bandgraph-0.1.1.tar.gz (949.5 kB view details)

Uploaded Source

Built Distribution

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

bandgraph-0.1.1-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: bandgraph-0.1.1.tar.gz
  • Upload date:
  • Size: 949.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.2

File hashes

Hashes for bandgraph-0.1.1.tar.gz
Algorithm Hash digest
SHA256 78f2d27fe7fa8a602e0338af19a02bb666147781358e3358a61e14ebadb955ac
MD5 d751d4f807175cab3512775d763d2cd4
BLAKE2b-256 2a40d3a186934aff9c7f33012240099257dd06402304ab02785adaad17443a9f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: bandgraph-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 3.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.2

File hashes

Hashes for bandgraph-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6f3b762469378c67422eadc724f345c9b7e8a20220527a5eccff6f807e42ffc7
MD5 a85788894f43ed37281eb8a299c65443
BLAKE2b-256 b82545e971063d1213212171b087135044376a576c1a64cb109388ab01c20002

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