module Graphviz:sig..end
Interface with GraphViz
This module provides a basic interface with dot and neato, two programs of the GraphViz toolbox. These tools are available at the following URLs:
http://www.graphviz.org
http://www.research.att.com/sw/tools/graphviz
Because the neato and dot engines present a lot of common points -
in particular in the graph description language, large parts of
the code is shared. The CommonAttributes module defines
attributes of graphs, vertices and edges that are understood by the
two engines. Then module DotAttributes and NeatoAttributes
define attributes specific to dot and neato respectively.
typecolor =int
typecolor_with_transparency =int32
The two least significant bytes encode the transparency information; the six most signification are the standard RGB color
val color_to_color_with_transparency : color -> color_with_transparency
typearrow_style =[ `Dot | `Inv | `Invdot | `Invodot | `None | `Normal | `Odot ]
module type ATTRIBUTES =sig..end
The ATTRIBUTES module type defines the interface for the engines.
module CommonAttributes:sig..end
The CommonAttributes module defines attributes for graphs, vertices and
edges that are available in the two engines, dot and neato.
module DotAttributes:sig..end
DotAttributes extends CommonAttributes and implements ATTRIBUTES.
module type GraphWithDotAttrs =sig..end
Graph module with dot attributes
module Dot:functor (X:sigGraph implementation. Sub-signature of
Sig.Gtypetmodule V:sig..endmodule E:sig..endval iter_vertex :(V.t -> unit) -> t -> unitval iter_edges_e :(E.t -> unit) -> t -> unitGraph, vertex and edge attributes.
val graph_attributes :t -> Graphviz.DotAttributes.graph listval default_vertex_attributes :t -> Graphviz.DotAttributes.vertex listval vertex_name :V.t -> stringval vertex_attributes :V.t -> Graphviz.DotAttributes.vertex listval get_subgraph :V.t -> Graphviz.DotAttributes.subgraph optionThe box (if exists) which the vertex belongs to. Boxes with same names are not distinguished and so they should have the same attributes.
val default_edge_attributes :t -> Graphviz.DotAttributes.edge listval edge_attributes :E.t -> Graphviz.DotAttributes.edge listend) ->sig..end
module NeatoAttributes:sig..end
module Neato:functor (X:sigGraph implementation. Sub-signature of
Sig.G.typetmodule V:sig..endmodule E:sig..endval iter_vertex :(V.t -> unit) -> t -> unitval iter_edges_e :(E.t -> unit) -> t -> unitGraph, vertex and edge attributes.
val graph_attributes :t -> Graphviz.NeatoAttributes.graph listval default_vertex_attributes :t -> Graphviz.NeatoAttributes.vertex listval vertex_name :V.t -> stringval vertex_attributes :V.t -> Graphviz.NeatoAttributes.vertex listval get_subgraph :V.t -> Graphviz.NeatoAttributes.subgraph optionThe box (if exists) which the vertex belongs to. Boxes with same names are not distinguished and so they should have the same attributes.
val default_edge_attributes :t -> Graphviz.NeatoAttributes.edge listval edge_attributes :E.t -> Graphviz.NeatoAttributes.edge listend) ->sig..end