The graphviz Library

The graphviz library provides bindings to the Graphviz graph visualisation suite of tools for the purely functional programming language Haskell. It can be downloaded from HackageDB or - if you have cabal-install - installing it is as simple as:

cabal update
cabal install graphviz

Library features

Main features of the graphviz library include:

  • Almost complete coverage of all Graphviz attributes and syntax.

  • Support for specifying clusters.

  • The ability to use a custom node type.

  • Functions for running a Graphviz layout tool with all specified output types.

  • The ability to not only generate but also parse Dot code with two options: strict and liberal (in terms of ordering of statements).

  • Functions to convert FGL graphs and other graph-like data structures to Dot code - including support to group them into clusters - with a high degree of customisation by specifying which attributes to use and limited support for the inverse operation.

  • Round-trip support for passing an FGL graph through Graphviz to augment node and edge labels with positional information, etc.

graphviz is free software licensed under a 3-Clause BSD License.

(C) 2008 Matthew Sackman

(C) 2008 - onwards Ivan Lazar Miljenovic

For more information, feel free to email me.