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.8.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

pycatflow-0.0.8-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pycatflow-0.0.8.tar.gz
  • Upload date:
  • Size: 11.0 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.8.tar.gz
Algorithm Hash digest
SHA256 fe7317c5a7272ec66bec8dcca8caae513825d54d5e54cf45a69a9a618957baa5
MD5 930b984d8519a3f58f0fea5802fce9a3
BLAKE2b-256 1b191e25c06841e3c3b8805034598c9a8ca639c36d3913fc36552b5573bb0ab1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pycatflow-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 10.8 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 9054b814a76548f3eeb2cc6f055744c428a419bef85d039460a92444d1d2f06c
MD5 a859b5f89915c36c9113287d910cb7cd
BLAKE2b-256 0f8c2b190f113ee6b927b17b02688e4642a02a5641f2a0279dac017d9093942b

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