Parses the Graphviz DOT language and creates an interface, in golang, with which to easily create new and manipulate existing graphs which can be written back to the DOT format.
This parser has been created using gocc.
Example (Parse and Edit)
graphAst, _ := parser.ParseString(`digraph G {}`)
graph := NewGraph()
Analyse(graphAst, graph)
graph.AddNode("G", "a", nil)
graph.AddNode("G", "b", nil)
graph.AddEdge("a", "b", true, nil)
output := graph.String()
Documentation
The godoc includes some more examples.
Installation
go get github.com/awalterschulze/gographviz
Tests
Users
aptly - Debian repository management tool
Mentions
Using Golang and GraphViz to Visualize Complex Grails Applications