iipokypatop/graphviz

GraphViz graph drawing for mathematical graph/network

v0.2.1 2015-03-08 10:30 UTC

This package is not auto-updated.

Last update: 2024-04-13 17:11:40 UTC


README

GraphViz graph drawing for mathematical graph/network

The library supports visualizing graph images, including them into webpages, opening up images from within CLI applications and exporting them as PNG, JPEG or SVG file formats (among many others). Because graph drawing is a complex area on its own, the actual layouting of the graph is left up to the excelent GraphViz "Graph Visualization Software" and we merely provide some convenient APIs to interface with GraphViz.

Note: This project is in beta stage! Feel free to report any issues you encounter.

Quickstart examples

Once installed, let's build and display a sample graph:

$graph = new Fhaculty\Graph\Graph();

$blue = $graph->createVertex('blue');
$blue->setAttribute('graphviz.color', 'blue');

$red = $graph->createVertex('red');
$red->setAttribute('graphviz.color', 'red');

$edge = $blue->createEdgeTo($red);
$edge->setAttribute('graphviz.color', 'grey');

$graphviz = new Graphp\GraphViz\GraphViz();
$graphviz->display($graph);

The above code will open your default image viewer with the following image:

red-blue

Install

The recommended way to install this library is through composer. New to composer?

{
    "require": {
        "graphp/graphviz": "~0.2.0"
    }
}

In order to be able to use the graph drawing feature you'll have to install GraphViz (dot executable). Users of Debian/Ubuntu-based distributions may simply invoke sudo apt-get install graphviz, Windows users have to download GraphViZ for Windows and remaining users should install from GraphViz homepage.

License

Released under the terms of the permissive MIT license.