Skip to main content

Draws graphs.

Project description

app-graphs

Original repository (github). PyPI.

app-graphs uses ogdf-python which in turn uses OGDF. app-graphs draws a graph from data given in .xlsx format. Nodes are generated from given aplications and components as well as from interfaces, where interface represents node and two edges conected to it and source/target node. Edges are generated between aplication and its components and from directed edges provided.

Installation

First we need to install OGDF. This is done by downloading OGDF, unziping it and calling following commands in bash:

foo@bar:~ogdf$ mkdir ogdf-debug ogdf-release
foo@bar:~ogdf$ cd ogdf-debug
foo@bar:~ogdf/ogdf-debug$ cmake ..
foo@bar:~ogdf/ogdf-debug$ ccmake ..

Configure BUILD_SHARED_LIB=ON and CMAKE_BUILD_TYPE=Debug when calling last line.

foo@bar:~ogdf/ogdf-debug$ make

Repeat above for release (debug <-> release). And as a last step add ogdf to path.

foo@bar:~ogdf$ export OGDF_BUILD_DIR=~/ogdf/ogdf-debug

As a last step install app-graphs.

pip install app-graphs

Usage

from app_graphs import graph

# Define graph instance
my_graph = graph()

# Read data from filename_aplikacije and vmesniki_sheet_name
my_graph.read(filename_apps = r'example.xlsx',              # name of file containing information about apps and components
            apps_sheet_name = 'Aplication list',            # name of sheet in above file
            filename_interfaces = r'example.xlsx',          # name of file containing information about interfaces
            interfaces_sheet_name = 'Integration list',     # name of sheet in above file
            apps = 'Aplications',                           # name of apps names column
            components = 'Components',                      # name of components names column
            source = 'Source',                              # name of interface's source app/component column
            target = 'Target',                              # name of interface's target app/component column
            interface_direction = 'Direction',              # name of interface direction column
            technologies = 'Technology',                    # name of technologies names column
            colors = 'Colors'                               # name of colors column
            )

# Uses ogdf-python to generate graph
my_graph.draw()

# Saves genereted graph in desired format
my_graph.save_svg('test-graph')

example

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

app-graphs-0.0.2.tar.gz (16.9 kB view hashes)

Uploaded Source

Built Distribution

app_graphs-0.0.2-py3-none-any.whl (16.6 kB view hashes)

Uploaded Python 3

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