Module Graphviz.DotAttributes

DotAttributes extends CommonAttributes and implements ATTRIBUTES.

type graph = [
| CommonAttributes.graph
| `Bgcolor of color(*

Sets the background color and the inital fill color.

*)
| `BgcolorWithTransparency of color_with_transparency(*

Sets the background color and the inital fill color with a transparency component.

*)
| `Comment of string(*

Comment string.

*)
| `Concentrate of bool(*

If true, enables edge concentrators. Default value is false.

*)
| `Fontpath of string(*

List of directories for fonts.

*)
| `Layers of string list(*

List of layers.

*)
| `Margin of float(*

Sets the page margin (included in the page size). Default value is 0.5.

*)
| `Mclimit of float(*

Scale factor for mincross iterations. Default value is 1.0.

*)
| `Nodesep of float(*

Sets the minimum separation between nodes, in inches. Default value is 0.25.

*)
| `Nslimit of int(*

If set of f, bounds network simplex iterations by f * <number of nodes> when ranking nodes.

*)
| `Nslimit1 of int(*

If set of f, bounds network simplex iterations by f * <number of nodes> when setting x-coordinates.

*)
| `Ranksep of float(*

Sets the minimum separation between ranks.

*)
| `Quantum of float(*

If not 0.0, node label dimensions will be rounded to integral multiples of it. Default value is 0.0.

*)
| `Rankdir of [ `TopToBottom | `BottomToTop | `LeftToRight | `RightToLeft ](*

Direction of rank ordering. Default value is `TopToBottom.

*)
| `Ratio of [ `Float of float | `Fill | `Compress | `Auto ](*

Sets the aspect ratio.

*)
| `Samplepoints of int(*

Number of points used to represent ellipses and circles on output. Default value is 8.

*)
| `Url of string(*

URL associated with graph (format-dependent).

*)
]

Attributes of graphs. They include all common graph attributes and several specific ones. All attributes described in the "dot User's Manual, February 4, 2002" are handled, excepted: clusterank, color, compound, labeljust, labelloc, ordering, rank, remincross, rotate, searchsize and style.

type vertex = [
| CommonAttributes.vertex
| `Comment of string(*

Comment string.

*)
| `Distortion of float
| `Fillcolor of color(*

Sets the fill color (used when `Style filled). Default value is lightgrey.

*)
| `FillcolorWithTransparency of color_with_transparency(*

Sets the fill color (used when `Style filled) with a transparency component. Default value is fully opaque lightgrey.

*)
| `Fixedsize of bool(*

If true, forces the given dimensions to be the actual ones. Default value is false.

*)
| `Layer of string(*

Overlay.

*)
| `Url of string(*

The default url for image map files; in PostScript files, the base URL for all relative URLs, as recognized by Acrobat Distiller 3.0 and up.

*)
| `Z of float(*

z coordinate for VRML output.

*)
]

Attributes of nodes. They include all common node attributes and several specific ones. All attributes described in the "dot User's Manual, February 4, 2002" are handled, excepted: bottomlabel, group, shapefile and toplabel.

type edge = [
| CommonAttributes.edge
| `Arrowhead of arrow_style(*

Sets the style of the head arrow. Default value is `Normal.

*)
| `Arrowsize of float(*

Sets the scaling factor of arrowheads. Default value is 1.0.

*)
| `Arrowtail of arrow_style(*

Sets the style of the tail arrow. Default value is `Normal.

*)
| `Comment of string(*

Comment string.

*)
| `Constraint of bool(*

If false, causes an edge to be ignored for rank assignment. Default value is true.

*)
| `Headlabel of string(*

Sets the label attached to the head arrow.

*)
| `Headport of [ `N | `NE | `E | `SE | `S | `SW | `W | `NW ]
| `Headurl of string(*

Url attached to head label if output format is ismap.

*)
| `Labelangle of float(*

Angle in degrees which head or tail label is rotated off edge. Default value is -25.0.

*)
| `Labeldistance of float(*

Scaling factor for distance of head or tail label from node. Default value is 1.0.

*)
| `Labelfloat of bool(*

If true, lessen constraints on edge label placement. Default value is false.

*)
| `Layer of string(*

Overlay.

*)
| `Minlen of int(*

Minimum rank distance between head an tail. Default value is 1.

*)
| `Samehead of string(*

Tag for head node; edge heads with the same tag are merged onto the same port.

*)
| `Sametail of string(*

Tag for tail node; edge tails with the same tag are merged onto the same port.

*)
| `Taillabel of string(*

Sets the label attached to the tail arrow.

*)
| `Tailport of [ `N | `NE | `E | `SE | `S | `SW | `W | `NW ]
| `Tailurl of string(*

Url attached to tail label if output format is ismap.

*)
| `Weight of int(*

Sets the integer cost of stretching the edge. Default value is 1.

*)
]

Attributes of edges. They include all common edge attributes and several specific ones. All attributes described in the "dot User's Manual, February 4, 2002" are handled, excepted: lhead and ltail.

type subgraph = {
sg_name : string;
sg_attributes : vertex list;
sg_parent : string option;
}

Subgraphs have a name and some vertices.