graphviz: Bindings to Graphviz for graph visualisation.

[ bsd3, graphics, graphs, library ] [ Propose Tags ] [ Report a vulnerability ]

This library provides bindings for the Dot language used by the Graphviz (http://graphviz.org/) suite of programs for visualising graphs, as well as functions to call those programs.

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.


[Skip to Readme]

Flags

Automatic Flags
NameDescriptionDefault
test-parsing

Build a utility to test parsing of available Dot code.

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 2008.7.10, 2008.7.11, 2008.9.6, 2008.9.20, 2009.5.1, 2999.0.0.0, 2999.1.0.0, 2999.1.0.1, 2999.1.0.2, 2999.5.0.0, 2999.5.1.0, 2999.5.1.1, 2999.6.0.0, 2999.7.0.0, 2999.8.0.0, 2999.9.0.0, 2999.10.0.0, 2999.10.0.1, 2999.11.0.0, 2999.12.0.0, 2999.12.0.1, 2999.12.0.2, 2999.12.0.3, 2999.12.0.4, 2999.13.0.0, 2999.13.0.1, 2999.13.0.2, 2999.13.0.3, 2999.14.0.0, 2999.14.1.0, 2999.15.0.0, 2999.15.0.1, 2999.16.0.0, 2999.17.0.0, 2999.17.0.1, 2999.17.0.2, 2999.18.0.0, 2999.18.0.1, 2999.18.0.2, 2999.18.1.0, 2999.18.1.1, 2999.18.1.2, 2999.19.0.0, 2999.20.0.0, 2999.20.0.1, 2999.20.0.2, 2999.20.0.3, 2999.20.0.4, 2999.20.1.0, 2999.20.2.0 (info)
Change log Changelog.md
Dependencies base (>=4.5.0.0 && <5), bytestring (>=0.9), colour (>=2.3 && <2.4), containers, directory, dlist (>=0.5 && <1.1), fgl (>=5.4 && <5.9), filepath, graphviz, mtl (>=2 && <3), polyparse (>=1.9 && <1.14), process, temporary (>=1.1 && <1.4), text, wl-pprint-text (>=1.2 && <1.3) [details]
License BSD-3-Clause
Copyright Matthew Sackman, Ivan Lazar Miljenovic
Author Matthew Sackman, Ivan Lazar Miljenovic
Maintainer Daniel Casanueva (daniel.casanueva `at` proton.me)
Category Graphs, Graphics
Home page https://gitlab.com/daniel-casanueva/haskell/graphviz
Uploaded by DanielDiaz at 2023-12-13T12:30:49Z
Distributions Arch:2999.20.2.0, Debian:2999.20.0.4, Fedora:2999.20.1.0, LTSHaskell:2999.20.2.0, NixOS:2999.20.2.0, Stackage:2999.20.2.0
Reverse Dependencies 51 direct, 21 indirect [details]
Executables graphviz-testparsing
Downloads 72079 total (376 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-12-13 [all 1 reports]

Readme for graphviz-2999.20.2.0

[back to package description]

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.