Visualization Using Graphviz - FubarDevelopment/QuickGraph GitHub Wiki
QuickGraph supports generating dot files, the file format of [Graphviz]. All Graphviz related code are located in the QuickGraph.Graphviz
assembly.
Basic graph rendering
The GraphvizAlgorithm
class contains the logic to render a IVertexAndEdgeListGraph
.
GraphFormat
,CommonVertexFormat
andCommonEdgeFormat
control the default 'looks' of the generated graph,FormatVertex
andFormatEdge
events let you customize the display of individual vertices and edges.
IVertexAndEdgeListGraph<TVertex,TEdge> g= ...;
var graphviz = new GraphvizAlgorithm<TVertex,TEdge>(g);
// render
string output = graphviz.Generate(new FileDotEngine(), "graph");
Custom Rendering of Dot
QuickGraph sends the generated dot
code to a 'dot engine' interface which is supposed to do the rest of the work. This is where you can plugin and add any additional steps. QuickGraph provides a simple rendering engine that writes the dot file to disk :)
public interface IDotEngine
{
// renders the dot code and returns the name of the generated file
string Run(
GraphvizImageType imageType,
string dot,
string outputFileName);
}