Skip to main content

A tool for visualizing categorical data over time.

Project description

PyCatFlow

This package is a visualization tool which allows the representation of temporal developments, based on categorical data.

Install

PyCatFlow is available on PyPi:

$ pip3 install pycatflow

Alternatively you can download the repository and install the package by running the setup.py install routine. Make sure to install the requirements as well:

pip3 install -r requirements.txt
python3 setup.py install

Additional Requirements: The visualization and export is based on the drawSvg package that in turn requires cairo to be installed as an external requirement. Platform-specific instructions for installing cairo are available on the cairo homepage.

On macOS cairo can be installed easily using homebrew:

$ brew install cairo

Basic usage

The visualization library provides many functionalities for adjusting the visual output. A simple use case is however as follows:

import pycatflow as pcf

# Loading and parsing data:
data = pcf.read_file("sample_data_ChatterBot_Requirements.csv", columns="column", nodes="items", categories="category", column_order="column order")

# Generating the visualization
viz = pcf.visualize(data, spacing=20, width=800, maxValue=20, minValue=2)
viz.savePng('sample_viz.png')
viz.saveSvg('sample_viz.svg')
viz

The code and sample data are provided in the example folder. The data contains annual snapshots of requirements of the ChatterBots framework developed and maintained by Gunther Cox.

Running the above code creates this visualization:

Sample Visualization

Credits & License

PyCatFlow was conceptualized by Marcus Burkhardt and implemented by Herbert Natta (@herbertmn). It is inspired by the Rankflow visualization tool develped by Bernhard Rieder.

The package is released under MIT License.

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

pycatflow-0.0.2.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

pycatflow-0.0.2-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file pycatflow-0.0.2.tar.gz.

File metadata

  • Download URL: pycatflow-0.0.2.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for pycatflow-0.0.2.tar.gz
Algorithm Hash digest
SHA256 0ea4ec8342ce786ad644868fd1ece57a90a0ca05b46b9d38a8093d8aeac5bd39
MD5 6008aed7ece6b6da2a73d55aedcf0637
BLAKE2b-256 15affacf35cd5a3183f2efd1ab44f66b7710fdafd9d10b3b8cbd5656c6ea156e

See more details on using hashes here.

File details

Details for the file pycatflow-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: pycatflow-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for pycatflow-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9afdaf53e448759ba82aa75340c1de116578ecfc7affa000f6f0038114bc323c
MD5 4ecb1efae2ea3039f1fc73d3681aaae3
BLAKE2b-256 1b4deef8ace6cf1e3f688f74653847345ec887033daf7a54c6609f08d352cd77

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page