File conversion and export support for graphs created using the Erlang digraph module.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc
src
test
.dockerignore
.gitignore
.yamllint
Dockerfile
LICENSE.txt
Makefile
README.md
docker-compose.yml
rebar.config
rebar.lock
requirements.txt

README.md

digraph_export

Copyright (c) 2018 John Krukoff

Version: 1.0.0

Authors: John Krukoff (github@cultist.org).

Overview

Graph Animation

The digraph_export module provides a set of utility functions for converting digraph graphs into common graph file formats. In addition, graph viewing programs can be launched to view those files.

It is intended for use in debugging and visualizing graphs, not for customizing the export process. As such, no graph features beyond digraph's built in ID and label constructs are supported.

Usage


1> Graph = digraph:new(),
    digraph:add_vertex(Graph, 1, first),
    digraph:add_vertex(Graph, 2, second),
    digraph:add_edge(Graph, edge, 1, 2, connected).
2> GraphML = digraph_export:convert(Graph, graphml).
3> digraph_export:view(GraphML, graphml, cytoscape).

Cytoscape Example Graph

Formats

The following output file formats are supported:

Programs

If installed and present on the current $PATH, the following programs can be launched:

Contributing

Please fork the repo and submit a PR. Tests are run via:


rebar3 eunit

Documentation is autogenerated using edown and edoc via:


rebar3 as markdown edoc

The application has only been tested with Erlang/OTP 21 on Windows 10. Reports of success (or failure!) on other versions and operating systems are appreciated.

Lineage

This module was created while working on an exercism.io erlang exercise, where I had managed to incorrectly create the underlying graph. Once I finally found the bug, I realized it would have been quite a bit easier if I'd been able to visualize the graph I'd created.

Modules

digraph_export