From: erg Date: Thu, 21 Feb 2008 23:27:29 +0000 (+0000) Subject: Update info files X-Git-Tag: LAST_LIBGRAPH~32^2~4718 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=62a2aa7c02c400121ddda9f1ddf2ace1f8ac4440;p=graphviz Update info files --- diff --git a/doc/info/attrs.html b/doc/info/attrs.html index 9ffe40e55..bac098d04 100644 --- a/doc/info/attrs.html +++ b/doc/info/attrs.html @@ -19,37 +19,37 @@ for numeric attributes, and certain restrictions on the use of the attribute.

All Graphviz attributes are specified by name-value pairs. Thus, to set the fillcolor of a node abc, one would use - +
-
abc [fillcolor = red]
-Similarly, to set the arrowhead style of an edge abc -> def, + +Similarly, to set the arrowhead style of an edge abc -> def, one would use - +
-
abc -> def [arrowhead = diamond]
+ Further details concerning the setting of attributes can be found -in the description of the +in the description of the DOT language.

At present, most device-independent units are either inches or -points, +points, which we take as 72 points per inch.

Note: Some attributes, such as -dir or arrowtail, are -ambiguous when used in +dir or arrowtail, are +ambiguous when used in DOT -with an undirected graph since the head and tail of an edge are meaningless. +with an undirected graph since the head and tail of an edge are meaningless. As a convention, the first time an undirected edge appears, the DOT parser will assign the left node as the tail node and the right node as the head. For example, the edge A -- B will have tail A and head B. It is the user's responsibility to handle such edges consistently. If the edge appears later, in the format - +
-
B -- A [taillabel = "tail"]
+ the drawing will attach the tail label to node A. To avoid possible confusion when such attributes are required, the user is encouraged to use a directed graph. @@ -59,16 +59,16 @@ or arrowhead attributes.

The tools accept standard C representations for int and double types. -For the bool type, TRUE values are +For the bool type, TRUE values are represented by "true" (case-insensitive) and any non-zero integer, and FALSE values by "false" (case-insensitive) and zero. -In addition, there are a variety of specialized types such as +In addition, there are a variety of specialized types such as arrowType, color, pointf and rankdir. Legal values for these types are given at the end.

-In the Used By field, the +In the Used By field, the characters E, N, G, S and C represent edges, nodes, the root graph, subgraphs and cluster subgraphs, respectively. @@ -207,7 +207,7 @@ This field indicates which graph component uses the attribute.
stringfalse label ENGClblString -"N"(nodes)
"" (otherwise) +"\N" (nodes)
"" (otherwise) labelURL ElblString ""svg, map only @@ -231,7 +231,7 @@ This field indicates which graph component uses the attribute. labeljust GCstring"c" labelloc -GCstring"t"clusters)
"b"(root graphs) +GCstring"t"(clusters)
"b"(root graphs) labeltarget EescString <none>svg, map only @@ -355,7 +355,7 @@ This field indicates which graph component uses the attribute. Gdouble96.0
0.0svg, bitmap output only root GNstring
bool -""graphs)
false(nodes)circo, twopi only +""(graphs)
false(nodes)circo, twopi only rotate Gint0 samehead @@ -449,49 +449,49 @@ This field indicates which graph component uses the attribute.

K
Spring constant used in virtual physical model. It roughly corresponds - to an ideal edge length (in inches), in that increasing K tends to + to an ideal edge length (in inches), in that increasing K tends to increase the distance between nodes. Note that the edge attribute len can be used to override this value for adjacent nodes.
URL -
Hyperlinks incorporated into device-dependent output. - At present, used in ps2, cmap, i*map and svg formats. +
Hyperlinks incorporated into device-dependent output. + At present, used in ps2, cmap, i*map and svg formats. For all these formats, URLs can be attached to nodes, edges and clusters. URL attributes can also be attached to the root graph in ps2, - cmap and i*map formats. This serves as the base URL for relative URLs in the + cmap and i*map formats. This serves as the base URL for relative URLs in the former, and as the default image map file in the latter.

- For svg, cmapx and imap output, the active area for a node is its - visible image. + For svg, cmapx and imap output, the active area for a node is its + visible image. For example, an unfilled - node with no drawn boundary will only be active on its label. + node with no drawn boundary will only be active on its label. For other output, the active area is its bounding box. - The active area for a cluster is its bounding box. + The active area for a cluster is its bounding box. For edges, the active areas are small circles where the edge contacts its head - and tail nodes. In addition, for svg, cmapx and imap, the active area - includes a thin polygon approximating the edge. The circles may + and tail nodes. In addition, for svg, cmapx and imap, the active area + includes a thin polygon approximating the edge. The circles may overlap the related node, and the edge URL dominates. - If the edge has a label, this will also be active. + If the edge has a label, this will also be active. Finally, if the edge has a head or tail label, this will also be active.

Note that, for edges, the attributes headURL, tailURL, labelURL and edgeURL allow control of various parts of an edge. - Also note that, if active areas of two edges overlap, it is unspecified + Also note that, if active areas of two edges overlap, it is unspecified which area dominates.

arrowhead -
Style of arrowhead on the head node of an edge. - See also the dir attribute, +
Style of arrowhead on the head node of an edge. + See also the dir attribute, and a limitation.
arrowsize
Multiplicative scale factor for arrowheads.
arrowtail -
Style of arrowhead on the tail node of an edge. +
Style of arrowhead on the tail node of an edge. See also the dir attribute, and a limitation. @@ -499,11 +499,11 @@ This field indicates which graph component uses the attribute.
Bounding box of drawing in integer points.
bgcolor -
When attached to the root graph, this color is used as the background for +
When attached to the root graph, this color is used as the background for entire canvas. When a cluster attribute, it is used as the initial - background for the cluster. If a cluster has a filled + background for the cluster. If a cluster has a filled style, the - cluster's fillcolor will overlay the + cluster's fillcolor will overlay the background color.

If no background color is specified for the root graph, no graphics @@ -521,9 +521,9 @@ This field indicates which graph component uses the attribute.

charset
Specifies the character encoding used when interpreting string input as a text label. The default value is "UTF-8". - The other legal value is "iso-8859-1" or, + The other legal value is "iso-8859-1" or, equivalently, - "Latin1". The charset attribute is case-insensitive. + "Latin1". The charset attribute is case-insensitive. Note that if the character encoding used in the input does not match the charset value, the resulting output may be very strange. @@ -531,7 +531,7 @@ This field indicates which graph component uses the attribute.
Mode used for handling clusters. If clusterrank is "local", a subgraph whose name begins with "cluster" is given special treatment. The subgraph is laid out separately, and then integrated as a unit into - its parent graph, with a bounding rectangle drawn about it. + its parent graph, with a bounding rectangle drawn about it. If the cluster has a label parameter, this label is displayed within the rectangle. Note also that there can be clusters within clusters. @@ -540,28 +540,28 @@ This field indicates which graph component uses the attribute.
color
Basic drawing color for graphics, not text. For the latter, use the - fontcolor attribute. + fontcolor attribute.

For edges, the value can either be a single color or a colorList. In the latter case, the edge is drawn using parallel splines or lines, one for each color in the list, in the order given. - The head arrow, if any, is drawn using the first color in the list, - and the tail arrow, if any, the second color. This supports the common - case of drawing opposing edges, but using parallel splines instead of + The head arrow, if any, is drawn using the first color in the list, + and the tail arrow, if any, the second color. This supports the common + case of drawing opposing edges, but using parallel splines instead of separately routed multiedges. For example, the graph

   digraph G {
     a -> b [dir=both color="red:blue"]
-  } 
+  }
   
yields
colorscheme
This attribute specifies a color scheme namespace. If defined, it specifies - the context for interpreting color names. In particular, if a - color value has form "xxx" or "//xxx", + the context for interpreting color names. In particular, if a + color value has form "xxx" or "//xxx", then the color xxx will be evaluated according to the current color scheme. If no color scheme is set, the standard X11 naming is used. @@ -572,7 +572,7 @@ This field indicates which graph component uses the attribute.
Comments are inserted into output. Device-dependent
compound -
If true, allow edges between clusters. (See lhead +
If true, allow edges between clusters. (See lhead and ltail below.)
concentrate @@ -615,14 +615,14 @@ This field indicates which graph component uses the attribute.
diredgeconstraints
Only valid when mode="ipsep". - If true, constraints are generated for each edge in the largest (heuristic) + If true, constraints are generated for each edge in the largest (heuristic) directed acyclic subgraph such that the edge must point downwards. If "hier", generates level constraints similar to those used with mode="hier". The main difference is that, in the latter case, only these constraints are involved, so a faster solver can be used.
distortion -
Distortion factor for shape=polygon. +
Distortion factor for shape=polygon. Positive values cause top part to be larger than bottom; negative values do the opposite. @@ -647,16 +647,16 @@ This field indicates which graph component uses the attribute.
edgetarget
If the edge has a URL or edgeURL - attribute, this attribute determines which window of the + attribute, this attribute determines which window of the browser is used - for the URL attached to the non-label part of the edge. - Setting it to "_graphviz" will open a new window if it + for the URL attached to the non-label part of the edge. + Setting it to "_graphviz" will open a new window if it doesn't already exist, or reuse it if it does. If undefined, the value of the target is used.
edgetooltip -
Tooltip annotation attached to the non-label part of an edge. - This is used only if the edge has a URL +
Tooltip annotation attached to the non-label part of an edge. + This is used only if the edge has a URL or edgeURL attribute.
epsilon @@ -665,17 +665,17 @@ This field indicates which graph component uses the attribute.
esep
Fraction to increase polygons (multiply - coordinates by 1 + esep) for purposes of spline edge routing. - This should normally be strictly less than + coordinates by 1 + esep) for purposes of spline edge routing. + This should normally be strictly less than sep.
fillcolor -
Color used to fill the background of a node or cluster +
Color used to fill the background of a node or cluster assuming style=filled. - If fillcolor is not defined, color is - used. (For clusters, if color is not defined, + If fillcolor is not defined, color is + used. (For clusters, if color is not defined, bgcolor is used.) If this is not defined, - the default is used, except for + the default is used, except for shape=point or when the output format is MIF, which use black by default. @@ -686,37 +686,37 @@ This field indicates which graph component uses the attribute.
fixedsize
If true, the node size is specified by the values of the - width - and height attributes only + width + and height attributes only and is not expanded to contain the text label.
fontcolor
Color used for text.
fontname -
Font used for text. This very much depends on the output format and, for +
Font used for text. This very much depends on the output format and, for non-bitmap output such as PostScript or SVG, the availability of the font when the graph is displayed or printed. As such, it is best to rely on font faces that are generally available, such as Times-Roman, Helvetica or Courier.

- If Graphviz was built using the + If Graphviz was built using the fontconfig library, the latter library will be used to search for the font. However, if the fontname string contains a slash character "/", it is treated as a pathname for the font file, though font lookup will append the usual font suffixes.

If Graphviz does not use fontconfig, fontname will be - considered the name of a Type 1 or True Type font file. - If you specify fontname=schlbk, the tool will look for a + considered the name of a Type 1 or True Type font file. + If you specify fontname=schlbk, the tool will look for a file named schlbk.ttf or schlbk.pfa or schlbk.pfb - in one of the directories specified by + in one of the directories specified by the fontpath attribute. The lookup does support various aliases for the common fonts.

fontnames
Allows user control of how basic fontnames are represented in SVG output. - If fontnames is undefined or "svg", + If fontnames is undefined or "svg", the output will try to use known SVG fontnames. For example, the default font "Times-Roman" will be mapped to the basic SVG font "serif". This can be overridden by setting @@ -731,7 +731,7 @@ This field indicates which graph component uses the attribute.
fontpath
Directory list used by libgd to search for bitmap fonts if Graphviz was not built with the fontconfig library. - If fontpath is not set, the environment + If fontpath is not set, the environment variable DOTFONTPATH is checked. If that is not set, GDFONTPATH is checked. If not set, libgd uses its compiled-in font path. @@ -747,7 +747,7 @@ This field indicates which graph component uses the attribute.
headURL
If headURL is defined, it is - output as part of the head label of the edge. + output as part of the head label of the edge. Also, this value is used near the head node, overriding any URL value. See limitation. @@ -771,10 +771,10 @@ This field indicates which graph component uses the attribute. See limitation.
headtarget -
If the edge has a headURL, - this attribute determines which window of the +
If the edge has a headURL, + this attribute determines which window of the browser is used - for the URL. Setting it to "_graphviz" will open a new window if it + for the URL. Setting it to "_graphviz" will open a new window if it doesn't already exist, or reuse it if it does. If undefined, the value of the target is used. @@ -795,11 +795,11 @@ This field indicates which graph component uses the attribute.
image
Gives the name of a file containing an image to be displayed inside - a node. The image file must be in one of the recognized formats, + a node. The image file must be in one of the recognized formats, typically JPEG, PNG, GIF or Postscript, and be able to be converted - into the desired output format. + into the desired output format.

- Unlike with the shapefile attribute, + Unlike with the shapefile attribute, the image is treated as node content rather than the entire node. In particular, an image can be contained in a node of any shape, not just a rectangle. @@ -809,17 +809,17 @@ This field indicates which graph component uses the attribute. containing node. In general, the image is given its natural size, (cf. dpi), and the node size is made large enough to contain its image, its - label, its margin, and its peripheries. + label, its margin, and its peripheries. Its width and height will also be at least as large as its - minimum width and height. + minimum width and height. If, however, fixedsize=true, - the width and height attributes specify the exact size of the node. + the width and height attributes specify the exact size of the node.

During rendering, in the default case (imagescale=false), the image retains its natural size. If imagescale=true, the image is uniformly scaled (i.e., its aspect ration is - preserved) to fit inside the node. + preserved) to fit inside the node. At least one dimension of the image will be as large as possible given the size of the node. When imagescale=width, @@ -837,7 +837,7 @@ This field indicates which graph component uses the attribute.

label
Text label attached to objects. If a node's shape is record, then the label can - have a special format + have a special format which describes the record layout.
labelURL @@ -846,20 +846,20 @@ This field indicates which graph component uses the attribute. defined for the edge.
labelangle -
This, along with labeldistance, determine +
This, along with labeldistance, determine where the headlabel (taillabel) are placed with respect to the head (tail) in polar coordinates. The origin in the coordinate system is the point where the edge touches the node. The ray of 0 degrees goes from the origin back along the edge, parallel to the edge - at the origin. -

+ at the origin. +

The angle, in degrees, specifies the rotation from the 0 degree ray, with positive angles moving counterclockwise and negative angles moving clockwise.

labeldistance -
Multiplicative scaling factor adjusting the distance that +
Multiplicative scaling factor adjusting the distance that the headlabel(taillabel) is from the head(tail) node. The default distance is 10 points. See labelangle for more details. @@ -873,7 +873,7 @@ This field indicates which graph component uses the attribute. If not set, defaults to edge's fontcolor.
labelfontname -
Font used for headlabel and taillabel. +
Font used for headlabel and taillabel. If not set, defaults to edge's fontname.
labelfontsize @@ -892,7 +892,7 @@ This field indicates which graph component uses the attribute. this value.
labelloc -
Top/bottom placement of graph and cluster labels. +
Top/bottom placement of graph and cluster labels. If the attribute is "t", place label at the top; if the attribute is "b", place label at the bottom. By default, root @@ -903,21 +903,21 @@ This field indicates which graph component uses the attribute.
labeltarget
If the edge has a URL or labelURL - attribute, this attribute determines which window of the + attribute, this attribute determines which window of the browser is used for the URL attached to the label. - Setting it to "_graphviz" will open a new window if it + Setting it to "_graphviz" will open a new window if it doesn't already exist, or reuse it if it does. If undefined, the value of the target is used.
labeltooltip -
Tooltip annotation attached to label of an edge. - This is used only if the edge has a URL +
Tooltip annotation attached to label of an edge. + This is used only if the edge has a URL or labelURL attribute.
landscape
If true, the graph is rendered in landscape mode. Synonymous with - rotate=90 or + rotate=90 or orientation=landscape.
layer @@ -925,12 +925,12 @@ This field indicates which graph component uses the attribute.
layers
Specifies a linearly ordered list of layer names attached to the graph - The graph is then output in separate layers. Only those components + The graph is then output in separate layers. Only those components belonging to the current output layer appear. For more information, see the page How to use drawing layers (overlays).
layersep -
Specifies the separator characters used to split the +
Specifies the separator characters used to split the layers attribute into a list of layer names.
len @@ -939,13 +939,13 @@ This field indicates which graph component uses the attribute.
levelsgap
Specifies strictness of level constraints in neato when mode="ipsep" or "hier". - Larger positive values mean stricter constraints, which demand more - separation between levels. On the other hand, negative values will relax + Larger positive values mean stricter constraints, which demand more + separation between levels. On the other hand, negative values will relax the constraints by allowing some overlap between the levels.
lhead
Logical head of an edge. When compound is true, - if lhead is defined and is the name of a cluster containing + if lhead is defined and is the name of a cluster containing the real head, the edge is clipped to the boundary of the cluster. See limitation. @@ -956,7 +956,7 @@ This field indicates which graph component uses the attribute.
ltail
Logical tail of an edge. When compound is true, - if ltail is defined and is the name of a cluster + if ltail is defined and is the name of a cluster containing the real tail, the edge is clipped to the boundary of the cluster. See limitation. @@ -965,8 +965,8 @@ This field indicates which graph component uses the attribute.
For graphs, this sets x and y margins of canvas, in inches. If the margin is a single double, both margins are set equal to the given value.

- Note that the margin is not part of the drawing but just empty space - left around the drawing. It basically corresponds to a translation of + Note that the margin is not part of the drawing but just empty space + left around the drawing. It basically corresponds to a translation of drawing, as would be necessary to center a drawing on a page. Nothing is actually drawn in the margin. To actually extend the background of a drawing, see the pad attribute. @@ -980,7 +980,7 @@ This field indicates which graph component uses the attribute.

mclimit
Multiplicative scale factor used to alter the MinQuit (default = 8) and MaxIter (default = 24) parameters used during crossing - minimization. These correspond to the + minimization. These correspond to the number of tries without improvement before quitting and the maximum number of iterations in each pass. @@ -999,7 +999,7 @@ This field indicates which graph component uses the attribute. it may cycle.

There are two new, experimental modes in neato, "hier", which adds a top-down - directionality similar to the layout used in dot, and "ipsep", which + directionality similar to the layout used in dot, and "ipsep", which allows the graph to specify minimum vertical and horizontal distances between nodes. (See the sep attribute.) @@ -1010,15 +1010,15 @@ This field indicates which graph component uses the attribute. these distances. By default, it uses the length of the shortest path, where the length of each edge is given by its len attribute. If model is "circuit", neato uses the - circuit resistance + circuit resistance model to compute the distances. This tends to emphasize clusters. If model is "subset", neato uses the subset model. This sets the edge length to be the number of nodes that are neighbors of exactly one of the end points, and then calculates the shortest paths. This helps - to separate nodes with high degree. + to separate nodes with high degree.

mosek -
If Graphviz is built with MOSEK defined, mode=ipsep and mosek=true, +
If Graphviz is built with MOSEK defined, mode=ipsep and mosek=true, the Mosek software (www.mosek.com) is use to solve the ipsep constraints.
nodesep @@ -1031,8 +1031,8 @@ This field indicates which graph component uses the attribute. (shifted by the prescribed margin). In record nodes, left-justified line will line up with the left side of the enclosing column of fields. - If nojustify is "true", multi-line labels will be justified - in the context of itself. For example, if the attribute is set, + If nojustify is "true", multi-line labels will be justified + in the context of itself. For example, if the attribute is set, the first label line is long, and the second is shorter and left-justified, the second will align with the left-most character in the first line, regardless of how large the node might be. @@ -1069,13 +1069,13 @@ This field indicates which graph component uses the attribute.
overlap
Determines if and how node overlaps should be removed. Nodes are first - enlarged using the sep attribute. + enlarged using the sep attribute. If "true" , overlaps are retained. If the value is "scale", overlaps are removed by uniformly scaling in x and y. - If the value converts to "false", node overlaps are removed by a - Voronoi-based technique. + If the value converts to "false", node overlaps are removed by a + Voronoi-based technique. If the value is "scalexy", x and y are separately - scaled to remove overlaps. + scaled to remove overlaps. If the value is "orthoxy" or "orthoyx", overlaps are moved by optimizing two constraint problems, one for the x axis and one for the y. The suffix indicates which axis is processed first. @@ -1094,14 +1094,14 @@ This field indicates which graph component uses the attribute. If the value is "vpsc", overlap removal is similarly to "ortho", except quadratic optimization is used to minimize node displacement.

- If the value is "ipsep", - If the layout is done by neato with mode="ipsep", + If the value is "ipsep", + If the layout is done by neato with mode="ipsep", then one can use overlap=ipsep. In this case, the overlap removal constraints are incorporated into the layout algorithm itself. N.B. At present, this only supports one level of clustering.

- Except for fdp, the layouts assume overlap="true" as the default. + Except for fdp, the layouts assume overlap="true" as the default. Fdp first uses a number of passes using built-in, force-directed technique to remove overlaps. Thus, fdp accepts overlap with an integer prefix followed by a colon, specifying the number of tries. If there is @@ -1125,8 +1125,8 @@ This field indicates which graph component uses the attribute.

pack
This is true if the value of pack is "true" (case-insensitive) or a - non-negative integer. If true, each connected component of the graph is - laid out separately, and then the graphs are packed tightly. + non-negative integer. If true, each connected component of the graph is + laid out separately, and then the graphs are packed tightly. If pack has an integral value, this is used as the size, in points, of a margin around each part; otherwise, a default margin of 8 is used. @@ -1144,11 +1144,11 @@ This field indicates which graph component uses the attribute. set pack=true.
pad -
The pad attribute specifies how much, in inches, to extend the +
The pad attribute specifies how much, in inches, to extend the drawing area around the minimal area needed to draw the graph. - If the pad is a single double, both the x and y pad values are set + If the pad is a single double, both the x and y pad values are set equal to the given value. This area is part of the - drawing and will be filled with the background color, if appropriate. + drawing and will be filled with the background color, if appropriate.

Normally, a small pad is used for aesthetic reasons, especially when a background color is used, to avoid having nodes and edges abutting @@ -1174,7 +1174,7 @@ This field indicates which graph component uses the attribute.

pencolor
Color used to draw the bounding box around a cluster. - If pencolor is not defined, color is + If pencolor is not defined, color is used. If this is not defined, bgcolor is used. If this is not defined, the default is used.

@@ -1186,9 +1186,9 @@ This field indicates which graph component uses the attribute.

Specifies the width of the pen, in points, used to draw lines and curves, including the boundaries of edges and clusters. The value is inherited by subclusters. - It has no effect on text. + It has no effect on text.

- Previous to 31 January 2008, the effect of penwidth=W + Previous to 31 January 2008, the effect of penwidth=W was achieved by including setlinewidth(W) as part of a style specification. If both are used, penwidth will be used. @@ -1196,7 +1196,7 @@ This field indicates which graph component uses the attribute.

peripheries
Set number of peripheries used in polygonal shapes and cluster boundaries. Note that - user-defined shapes are treated as a + user-defined shapes are treated as a form of box shape, so the default peripheries value is 1 and the user-defined shape will be drawn in a bounding rectangle. Setting peripheries=0 will turn this off. @@ -1208,11 +1208,11 @@ This field indicates which graph component uses the attribute. in the pos attribute itself (cf. the point type).

Note: Due to an artifact of the implementation, final coordinates - are translated to the origin. Thus, if you look at the output coordinates - given in the (x)dot or plain format, pinned nodes will not have the same - output coordinates as were given on input. If this is important, a + are translated to the origin. Thus, if you look at the output coordinates + given in the (x)dot or plain format, pinned nodes will not have the same + output coordinates as were given on input. If this is important, a simple workaround is to maintain the coordinates of a pinned node. The vector - difference between the old and new coordinates will give the translation, + difference between the old and new coordinates will give the translation, which can then be subtracted from all of the appropriate coordinates.

pos @@ -1228,7 +1228,7 @@ This field indicates which graph component uses the attribute. When the -n command line flag is used with neato, it is assumed the positions have been set by one of the layout programs, and are therefore in points. Thus, neato -n can accept - input correctly without requiring a -s flag and, in fact, + input correctly without requiring a -s flag and, in fact, ignores any such flag.
quantum @@ -1237,18 +1237,18 @@ This field indicates which graph component uses the attribute.
rank
Rank constraints on the nodes in a subgraph. - If rank="same", all nodes are placed on the same rank. - If rank="min", all nodes are placed on the minimum rank. + If rank="same", all nodes are placed on the same rank. + If rank="min", all nodes are placed on the minimum rank. If rank="source", all nodes are placed on the minimum rank, and the only nodes on the minimum rank belong to some subgraph whose - rank attribute is "source" or "min". + rank attribute is "source" or "min". Analogous criteria hold for rank="max" and rank="sink". (Note: the minimum rank is topmost or leftmost, and the maximum rank is bottommost or rightmost.)
rankdir -
Sets direction of graph layout. For example, if rankdir="LR", +
Sets direction of graph layout. For example, if rankdir="LR", and barring cycles, an edge T -> H; will go from left to right. By default, graphs are laid out from top to bottom.

@@ -1265,14 +1265,14 @@ This field indicates which graph component uses the attribute. In twopi, specifies radial separation of concentric circles.

ratio -
Sets the aspect ratio (drawing height/drawing width) for the drawing. +
Sets the aspect ratio (drawing height/drawing width) for the drawing. Note that this is adjusted before the size attribute constraints are enforced.

If ratio is numeric, it is taken as the desired aspect ratio. - Then, if the actual aspect ratio is less than the desired ratio, + Then, if the actual aspect ratio is less than the desired ratio, the drawing height is scaled up to achieve the - desired ratio; if the actual ratio is greater than that desired ratio, + desired ratio; if the actual ratio is greater than that desired ratio, the drawing width is scaled up.

If ratio = "fill" and the size @@ -1280,13 +1280,13 @@ This field indicates which graph component uses the attribute. and y, so that the final drawing exactly fills the specified size.

If ratio = "compress" and the size - attribute is set, dot attempts to compress the initial layout to fit - in the given size. This achieves a tighter packing of nodes but + attribute is set, dot attempts to compress the initial layout to fit + in the given size. This achieves a tighter packing of nodes but reduces the balance and symmetry. This feature only works in dot.

If ratio = "expand", the size attribute is set, and both the width and the height of the graph are - less than the value in size, node positions are scaled + less than the value in size, node positions are scaled uniformly until at least one dimension fits size exactly. Note that this is distinct from using size as the @@ -1315,7 +1315,7 @@ This field indicates which graph component uses the attribute.

This is a synonym for the dpi attribute.
root -
This specifies nodes to be used as the center of the +
This specifies nodes to be used as the center of the layout and the root of the generated spanning tree. As a graph attribute, this gives the name of the node. As a node attribute (circo only), it specifies that the node should be used as a central node. In twopi, @@ -1338,7 +1338,7 @@ This field indicates which graph component uses the attribute. See limitation.
samplepoints -
If the input graph defines the vertices +
If the input graph defines the vertices attribute, and output is dot or xdot, this gives the number of points used for a node whose shape is a circle or ellipse. It plays the same role in neato, when adjusting the layout to avoid @@ -1354,7 +1354,7 @@ This field indicates which graph component uses the attribute. a minimal non-zero distance between nodes. If unset but esep is defined, sep will be set to esep/0.8. If esep is unset, the default value - is used. + is used.

When overlap="ipsep" or "vpsc", sep gives a minimum distance, in inches, to be left between nodes. @@ -1365,17 +1365,17 @@ This field indicates which graph component uses the attribute.

Set the shape of a node.
shapefile -
(Deprecated) If defined, shapefile specifies a file containing user-supplied node content. - The shape of the node is set to box. +
(Deprecated) If defined, shapefile specifies a file containing user-supplied node content. + The shape of the node is set to box. The image in the shapefile must be - rectangular. The image formats supported as well as the precise semantics of + rectangular. The image formats supported as well as the precise semantics of how the file is used depends on the output format. For further details, see External PostScript files.

- There is one exception to this usage. + There is one exception to this usage. If shape is set to "epsf", shapefile gives - a filename containing a definition of the node in PostScript. + a filename containing a definition of the node in PostScript. The graphics defined must be contain all of the node content, including any desired boundaries. For further details, see @@ -1391,10 +1391,10 @@ This field indicates which graph component uses the attribute.

size
Maximum width and height of drawing, in inches. - If defined and the drawing is too large, the drawing is uniformly - scaled down so that it fits within the given size. + If defined and the drawing is too large, the drawing is uniformly + scaled down so that it fits within the given size.

- If size ends in an exclamation point (!), + If size ends in an exclamation point (!), then it is taken to be the desired size. In this case, if both dimensions of the drawing are less than size, the drawing is scaled up uniformly until at @@ -1462,10 +1462,10 @@ This field indicates which graph component uses the attribute. See limitation.

tailtarget -
If the edge has a tailURL, - this attribute determines which window of the +
If the edge has a tailURL, + this attribute determines which window of the browser is used - for the URL. Setting it to "_graphviz" will open a new window if it + for the URL. Setting it to "_graphviz" will open a new window if it doesn't already exist, or reuse it if it does. If undefined, the value of the target is used. @@ -1474,7 +1474,7 @@ This field indicates which graph component uses the attribute. if the edge has a tailURL attribute.
target -
If the object has a URL, this attribute determines which window +
If the object has a URL, this attribute determines which window of the browser is used for the URL. See W3C documentation. @@ -1490,9 +1490,9 @@ This field indicates which graph component uses the attribute.
If set explicitly to true or false, the value determines whether or not internal bitmap rendering relies on a truecolor color model or uses a color palette. - If the attribute is unset, truecolor is not used + If the attribute is unset, truecolor is not used unless there is a shapefile property - for some node in the graph. + for some node in the graph. The output model will use the input model when possible.

Use of color palettes results in less memory usage during creation of the @@ -1500,7 +1500,7 @@ This field indicates which graph component uses the attribute.

Usually, the only time it is necessary to specify the truetype model is if the graph uses more than 256 colors. - However, if one uses bgcolor=transparent with + However, if one uses bgcolor=transparent with a color palette, font antialiasing can show up as a fuzzy white area around characters. Using truecolor=true avoids this problem. @@ -1509,7 +1509,7 @@ This field indicates which graph component uses the attribute.

If the input graph defines this attribute, the node is polygonal, and output is dot or xdot, this attribute provides the coordinates of the vertices of the node's polygon, in inches. - If the node is an ellipse or circle, the + If the node is an ellipse or circle, the samplepoints attribute affects the output. @@ -1536,15 +1536,15 @@ This field indicates which graph component uses the attribute.
z
Provides z coordinate value for 3D layouts and displays. If the - graph has dim set to 3 (or more), + graph has dim set to 3 (or more), neato will use a node's z value - for the z coordinate of its initial position if + for the z coordinate of its initial position if its pos attribute is also defined.

Even if no z values are specified in the input, it is necessary to declare a z attribute for nodes, e.g, using node[z=""] in order to get z values on output. - Thus, setting dim=3 but not declaring z will + Thus, setting dim=3 but not declaring z will cause neato -Tvrml to layout the graph in 3D but project the layout onto the xy-plane for the rendering. If the z attribute is declared, the final rendering @@ -1562,7 +1562,7 @@ the given types. "inv" "dot" "invdot" - "odot" + "odot" "invodot" "none" "tee" @@ -1577,7 +1577,7 @@ the given types. "open" "halfopen" "vee" - +

These are the basic set of backward-compatible arrow shapes. In addition, there is a grammar of arrow shapes @@ -1609,19 +1609,19 @@ the given types. digits, and can be separated by whitespace. HSV colors have the form of 3 numbers between 0 and 1, separated by whitespace or commas.

- String-valued color specifications are case-insensitive and interpreted - in the context of the current color scheme, as specified by the + String-valued color specifications are case-insensitive and interpreted + in the context of the current color scheme, as specified by the colorscheme attribute. If this is undefined, the X11 naming scheme will be used. An initial "/" character can be used to override the use of the colorscheme attribute. In particular, a single initial "/" will cause the string to be evaluated using the default - X11 naming. If the color value has the form "/ssss/yyyy", + X11 naming. If the color value has the form "/ssss/yyyy", the name yyyy is interpreted using the schema ssss. - If the color scheme name is empty, i.e., the color has the + If the color scheme name is empty, i.e., the color has the form "//yyyy", the colorscheme attribute is used. Thus, the forms "yyyy" and "//yyyy" are - equivalent. + equivalent.

At present, Graphviz recognizes the default color scheme X11, and the Brewer color schemes. Please note that Brewer color schemes are covered by this license. @@ -1636,15 +1636,15 @@ the given types. Sienna"#a0522d""0.051 0.718 0.627""sienna"

- Note that some output formats, e.g., mif, + Note that some output formats, e.g., mif, only support a limited number of specific colors.

The string value transparent can be used to indicate no color. This is only available in the output formats ps, svg, fig, vmrl, and the bitmap formats. It can be used whenever a - color is needed but is most useful with + color is needed but is most useful with the bgcolor attribute. - Usually, the same effect can be achieved by setting + Usually, the same effect can be achieved by setting style to invis.

colorList @@ -1660,7 +1660,7 @@ the given types. "none" For undirected edges T -- H;, one of the nodes, usually - the righthand one, is treated as the head for the purpose of + the righthand one, is treated as the head for the purpose of interpreting "forward" and "back".
escString @@ -1668,26 +1668,26 @@ the given types. to the context. For node attributes, the substring "\N" is replaced by the name of the node, and the substring "\G" by the name of the graph. - For graph or cluster attributes, the substring "\G" is replaced by the + For graph or cluster attributes, the substring "\G" is replaced by the name of the graph or cluster. For edge attributes, the substring "\E" is replaced by the name of the edge, the substring "\G" is replaced by the name of the graph or cluster, - and the substrings "\T" and "\H" by the names of - the tail and head nodes, respectively. + and the substrings "\T" and "\H" by the names of + the tail and head nodes, respectively. The name of an edge is the string formed from the name of the tail node, the appropriate edge operator ("--" or "->") and the name of the - head node. + head node.

- In addition, if the associated attribute is + In addition, if the associated attribute is label, - headlabel or taillabel, + headlabel or taillabel, the escape sequences "\n", "\l" and "\r" divide the label into lines, centered, left-justified, and right-justified, respectively.

layerList -
list of strings separated by characters from the - layersep attribute (by default, colons, +
list of strings separated by characters from the + layersep attribute (by default, colons, tabs or spaces), defining layer names and implicitly numbered 1,2,... @@ -1699,7 +1699,7 @@ the given types. by the layersep attribute.
lblString -
an escString +
an escString or an HTML label.
outputMode @@ -1732,7 +1732,7 @@ the given types.
pagedir
"BL", "BR", "TL", "TR", "RB", "RT", "LB", "LT". - These specify the 8 row or column major orders for traversing a + These specify the 8 row or column major orders for traversing a rectangular array, the first character corresponding to the major order and the second to the minor order. Thus, for "BL", the major order is from bottom to top, and the minor order is from left @@ -1741,8 +1741,8 @@ the given types. until the topmost row is traversed.
point -
"%f,%f"('!') representing the point (x,y). The - optional '!' indicates the +
"%f,%f"('!') representing the point (x,y). The + optional '!' indicates the node position should not change (input-only).

If dim is 3 or more, point may also have @@ -1759,20 +1759,20 @@ the given types. It has the form portname[:compass_point] or compass_point. If the first form is used, the corresponding node must either have - record shape with one of its fields + record shape with one of its fields having the given portname, - or have an HTML-like label, one of + or have an HTML-like label, one of whose components has a PORT attribute set to portname. In this case, the edge is aimed for the center of the corresponding field.

- If a compass point is used, it must have the form + If a compass point is used, it must have the form "n","ne","e","se","s","sw","w","nw". This modifies the edge placement to aim for the corresponding compass point on the port or, in the second form where no portname is supplied, on the node - itself. + itself.

- This attribute can be attached to an edge using the + This attribute can be attached to an edge using the headport and tailport attributes, or as part of the edge description as in @@ -1801,10 +1801,10 @@ the given types. (urx,ury).

shape -
A string specifying the shape of a node. +
A string specifying the shape of a node. There are three - main types of shapes : - polygon-based, + main types of shapes : + polygon-based, record-based and user-defined. @@ -1816,31 +1816,31 @@ the given types. and endp="e,%d,%d" and startp="s,%d,%d" - If a spline has points p1 p2 p3 ... pn, (n = 1 (mod 3)), the points + If a spline has points p1 p2 p3 ... pn, (n = 1 (mod 3)), the points correspond to the control points of a B-spline from p1 to pn. If startp is given, it touches one node of the edge, and the arrowhead goes from p1 to startp. If startp is not given, p1 touches a node. Similarly for pn and endp.
startType -
has the syntax [style][seed]. +
has the syntax [style][seed].

If style is present, it must be one of the strings "regular", - "self", or "random". In the first case, the nodes are - placed regularly about a circle. In the second case, + "self", or "random". In the first case, the nodes are + placed regularly about a circle. In the second case, an abbreviated version of neato is run to obtain the initial layout. In the last case, the nodes are placed randomly in a unit square.

If seed is present, it specifies a seed for the random number generator. If seed is a positive number, this is used as the - seed. If it is anything else, + seed. If it is anything else, the current time, and possibly the process id, is used to pick a seed, thereby making the choice more random. In this case, the seed value is stored in the graph.

If the value is just "random", a time-based seed is chosen.

- Note that input positions, specified by a node's + Note that input positions, specified by a node's pos attribute, are only used when the style is "random". @@ -1854,9 +1854,9 @@ the given types. Note that whitespace characters are ignored, except for names which can contain them. A name cannot contain any comma, or left or right parenthesis, and it cannot - begin with a whitespace character. + begin with a whitespace character.

- At present, the recognized style names are + At present, the recognized style names are "dashed", "dotted", "solid", "invis" and "bold" for nodes and edges, and "filled", "diagonals" and "rounded" for nodes only. The styles "filled" and "rounded" are recognized for clusters. @@ -1868,7 +1868,7 @@ the given types. used for more control over the width of node borders and edges than is allowed by bold. This style value takes an argument, specifying the width of the line in points. For example, style="bold" is - equivalent to style="setlinewidth(2)". + equivalent to style="setlinewidth(2)". The use of setlinewidth is deprecated; one should use the penwidth attribute instead. @@ -1882,7 +1882,7 @@ the given types. The optional Z is the zoom factor, i.e., the image in the original layout will be W/Z by H/Z points in size. By default, Z is 1. The optional last part is either a pair (x,y) giving a position in the original layout of the - graph, in + graph, in points, of the center of the viewport, or the name N of a node whose center should used as the focus. By default, the focus is the center of the graph bounding box, i.e., diff --git a/doc/info/output.html b/doc/info/output.html index f70a41ded..e4966f23a 100644 --- a/doc/info/output.html +++ b/doc/info/output.html @@ -14,13 +14,13 @@ The output format is specified with the -Tlang flag on the command line, where lang is one of the parameters listed below.

-The formats actually available in a given Graphviz system depend on +The formats actually available in a given Graphviz system depend on how the system was built and the presence of additional libraries. To see what formats dot supports, run dot -T?. -See the description of the -T +See the description of the -T flag for additional information.

-Note that the internal coordinate system has the origin +Note that the internal coordinate system has the origin in the lower left corner. Thus, positions in the canon, @@ -110,412 +110,412 @@ formats need to be interpreted in this manner.

Format Descriptions

bmp -
Outputs images in the Windows BMP format. +
Outputs images in the Windows BMP format.
canon ,
dot ,
xdot -
These formats produce output in the - dot language. - Using canon produces a prettyprinted version of the input, - with no layout performed. -

- The dot option corresponds to attributed dot output, - and is the default output format. - It reproduces the input, along with layout information for the graph. - In particular, a bb attribute is - attached to the graph, specifying the bounding box of the drawing. - If the graph has a label, its position is specified by the - lp attribute. -

- Each node gets pos, - width and - height attributes. If the node is a record, - the record rectangles are given in the - rects attribute. - If the node is a polygon and the - vertices attribute is defined, this - attribute contains the vertices of the node. -

- Every edge is - assigned a pos attribute, - and if the edge has a label, the label position - is given in lp. -

- The xdot format extends the - dot format by providing much more detailed information about - how graph components are drawn. It relies on additional attributes - for nodes, edges and graphs. -

- The format is preliminary; comments and - suggestions for better representations are welcome. - To allow for changes in the format, Graphviz attaches the attribute - xdotversion to the graph. -

- At present, additional drawing attributes are only attached to nodes - and edges. There are six new attributes: - - -
_draw_Drawing operations -
_ldraw_Label drawing -
_hdraw_Head arrowheadEdge only -
_tdraw_Tail arrowheadEdge only -
_hldraw_Head labelEdge only -
_tldraw_Tail labelEdge only -
-

- The value of these attributes consists of the concatenation of some - (multi-)set of the following 12 rendering or attribute operations. - (The number is parentheses gives the xdot version when the operation - was added to the format. If no version number is given, the operation - was in the original specification.) - - -
E x0 y0 w h - Filled ellipse ((x-x0)/w)2 + ((y-y0)/h)2 = 1 -
e x0 y0 w h - Unfilled ellipse ((x-x0)/w)2 + ((y-y0)/h)2 = 1 -
P n x1 y1 ... xn yn - Filled polygon using the given n points -
p n x1 y1 ... xn yn - Unfilled polygon using the given n points -
L n x1 y1 ... xn yn - Polyline using the given n points -
B n x1 y1 ... xn yn - B-spline using the given n control points -
b n x1 y1 ... xn yn - Filled B-spline using the given n control points (1.1) -
T x y j w n -c1c2...cn - Text drawn using the baseline point (x,y). The text consists of the - n characters following '-'. The text should be left-aligned (centered, - right-aligned) on the point if j is -1 (0, 1), respectively. The value - w gives the width of the text as computed by the library. -
C n -c1c2...cn - Set fill color. The color value consists of the - n characters following '-'. (1.1) -
c n -c1c2...cn - Set pen color. The color value consists of the - n characters following '-'. (1.1) -
F s n -c1c2...cn - Set font. The font size is s points. The font name consists of the - n characters following '-'. (1.1) -
S n -c1c2...cn - Set style attribute. The style value consists of the - n characters following '-'. The syntax of the value is the same as - specified for a styleItem in style. (1.1) -
I x y w h n -c1c2...cn - Externally-specified image drawn in the box with lower left - corner (x,y) and upper right corner (x+w,y+h). The name of the image - consists of the n characters following '-'. This is usually a bitmap - image. Note that the image size, even when converted from pixels to - points, might be different from the required size (w,h). It is - assumed the renderer will perform the necessary scaling. (1.2) -
- - In handling alignment, the application may want to recompute the - string width using its own rendering primitives. -

- The text operation is only used in the label attributes. Normally, - the non-text operations are only used in the non-label attributes. - If, however, the decorate - attribute is set on an edge, its label - attribute will also contain a polyline operation. - In addition, if a label is a complex, HTML-like label, it will also - contain non-text operations. -

- All coordinates and sizes are in points. - Note though that if - an edge or node is invisible, no drawing operations are attached to it. -

- Version info: - - - - - -
Xdot versionGraphviz version
1.01.9
1.12.8
1.22.13
+

These formats produce output in the +dot language. +Using canon produces a prettyprinted version of the input, +with no layout performed. +

+The dot option corresponds to attributed dot output, +and is the default output format. +It reproduces the input, along with layout information for the graph. +In particular, a bb attribute is +attached to the graph, specifying the bounding box of the drawing. +If the graph has a label, its position is specified by the +lp attribute. +

+Each node gets pos, +width and +height attributes. If the node is a record, +the record rectangles are given in the +rects attribute. +If the node is a polygon and the +vertices attribute is defined, this +attribute contains the vertices of the node. +

+Every edge is +assigned a pos attribute, +and if the edge has a label, the label position +is given in lp. +

+The xdot format extends the +dot format by providing much more detailed information about +how graph components are drawn. It relies on additional attributes +for nodes, edges and graphs. +

+The format is preliminary; comments and +suggestions for better representations are welcome. +To allow for changes in the format, Graphviz attaches the attribute +xdotversion to the graph. +

+At present, additional drawing attributes are only attached to nodes +and edges. There are six new attributes: + + +
_draw_Drawing operations +
_ldraw_Label drawing +
_hdraw_Head arrowheadEdge only +
_tdraw_Tail arrowheadEdge only +
_hldraw_Head labelEdge only +
_tldraw_Tail labelEdge only +
+

+The value of these attributes consists of the concatenation of some +(multi-)set of the following 12 rendering or attribute operations. +(The number is parentheses gives the xdot version when the operation +was added to the format. If no version number is given, the operation +was in the original specification.) + + +
E x0 y0 w h +Filled ellipse ((x-x0)/w)2 + ((y-y0)/h)2 = 1 +
e x0 y0 w h +Unfilled ellipse ((x-x0)/w)2 + ((y-y0)/h)2 = 1 +
P n x1 y1 ... xn yn +Filled polygon using the given n points +
p n x1 y1 ... xn yn +Unfilled polygon using the given n points +
L n x1 y1 ... xn yn +Polyline using the given n points +
B n x1 y1 ... xn yn +B-spline using the given n control points +
b n x1 y1 ... xn yn +Filled B-spline using the given n control points (1.1) +
T x y j w n -c1c2...cn +Text drawn using the baseline point (x,y). The text consists of the +n characters following '-'. The text should be left-aligned (centered, +right-aligned) on the point if j is -1 (0, 1), respectively. The value +w gives the width of the text as computed by the library. +
C n -c1c2...cn +Set fill color. The color value consists of the +n characters following '-'. (1.1) +
c n -c1c2...cn +Set pen color. The color value consists of the +n characters following '-'. (1.1) +
F s n -c1c2...cn +Set font. The font size is s points. The font name consists of the +n characters following '-'. (1.1) +
S n -c1c2...cn +Set style attribute. The style value consists of the +n characters following '-'. The syntax of the value is the same as +specified for a styleItem in style. (1.1) +
I x y w h n -c1c2...cn +Externally-specified image drawn in the box with lower left +corner (x,y) and upper right corner (x+w,y+h). The name of the image +consists of the n characters following '-'. This is usually a bitmap +image. Note that the image size, even when converted from pixels to +points, might be different from the required size (w,h). It is +assumed the renderer will perform the necessary scaling. (1.2) +
+ +In handling alignment, the application may want to recompute the +string width using its own rendering primitives. +

+The text operation is only used in the label attributes. Normally, +the non-text operations are only used in the non-label attributes. +If, however, the decorate +attribute is set on an edge, its label +attribute will also contain a polyline operation. +In addition, if a label is a complex, HTML-like label, it will also +contain non-text operations. +

+All coordinates and sizes are in points. +Note though that if +an edge or node is invisible, no drawing operations are attached to it. +

+Version info: + + + + + +
Xdot versionGraphviz version
1.01.9
1.12.8
1.22.13

cmap -
Produces map files for client-side image maps. The cmap format is - mostly identical to cmapx, but the latter is well-formed XML amenable - to processing by XML tools. In particular, the cmapx output is wrapped in - <map></map>. +
Produces map files for client-side image maps. The cmap format is +mostly identical to cmapx, but the latter is well-formed XML amenable +to processing by XML tools. In particular, the cmapx output is wrapped in +<map></map>.
dia -
Produces Dia output. +
Produces Dia output.
fig -
Outputs graphs in the FIG graphics language. +
Outputs graphs in the FIG graphics language.
gd ,
gd2 -
Output images in the GD and GD2 format. These are the internal - formats used by the gd library. The latter is compressed. +
Output images in the GD and GD2 format. These are the internal +formats used by the gd library. The latter is compressed.
gif -
Outputs GIF bitmap images. +
Outputs GIF bitmap images.
gtk -
Creates a GTK window and displays the output there. +
Creates a GTK window and displays the output there.
hpgl -
Produces output in the HP-GL/2 vector graphic printer language. +
Produces output in the HP-GL/2 vector graphic printer language.
ico -
Outputs images in the Windows ICO format. +
Outputs images in the Windows ICO format.
imap ,
cmapx -
Produces map files for server-side and client-side image maps, - These can be used in a web page with - a graphical form of the output, e.g. in JPEG or GIF format, to attach - links to nodes and edges. For example, to create a server-side map - given the dot file -
-  /* x.dot */
-  digraph mainmap {
-    URL="http://www.research.att.com/base.html";
-    command [URL="http://www.research.att.com/command.html"];
-    command -> output [URL="colors.html"];
-  }
-  
- one would process the graph and generate two output files: -
-  dot -Timap -ox.map -Tgif -ox.gif x.dot
-  
- and then refer to it in a web page: - - <A HREF="x.map"><IMG SRC="x.gif" ismap="ismap" /></A> - - For client-side maps, one again generates two output files: -
-  dot -Tcmapx -ox.map -Tgif -ox.gif x.dot
-  
- and uses the HTML - - <IMG SRC="x.gif" USEMAP="#mainmap" /> - ... [content of x.map] ... - - URLs can be attached to the root - graph, nodes and edges. If a node has a URL, clicking in the node - will activate the link. - If an edge has a URL, various - points along the edge (but not necessarily the head or tail) - will link to it. In addition, if the edge has a - label, that will link - to the URL. - As for the head of the edge, this is linked to the - headURL, if set. - Otherwise, it is linked to the edge's URL if that is defined. - The analogous description holds for the tail and the - tailURL. - A URL associated with the graph is used as a default link. -

- If the URL - of a node contains the escape sequence "\N", it will be replaced by - the node's name. - If the headURL is defined and contains the escape sequence "\N", - it will be replaced by - the headlabel, if defined. - The analogous result holds for the tailURL and the - taillabel. +

Produces map files for server-side and client-side image maps, +These can be used in a web page with +a graphical form of the output, e.g. in JPEG or GIF format, to attach +links to nodes and edges. For example, to create a server-side map +given the dot file +
+/* x.dot */
+digraph mainmap {
+  URL="http://www.research.att.com/base.html";
+  command [URL="http://www.research.att.com/command.html"];
+  command -> output [URL="colors.html"];
+}
+
+one would process the graph and generate two output files: +
+dot -Timap -ox.map -Tgif -ox.gif x.dot
+
+and then refer to it in a web page: + +<A HREF="x.map"><IMG SRC="x.gif" ismap="ismap" /></A> + +For client-side maps, one again generates two output files: +
+dot -Tcmapx -ox.map -Tgif -ox.gif x.dot
+
+and uses the HTML + +<IMG SRC="x.gif" USEMAP="#mainmap" /> +... [content of x.map] ... + +URLs can be attached to the root +graph, nodes and edges. If a node has a URL, clicking in the node +will activate the link. +If an edge has a URL, various +points along the edge (but not necessarily the head or tail) +will link to it. In addition, if the edge has a +label, that will link +to the URL. +As for the head of the edge, this is linked to the +headURL, if set. +Otherwise, it is linked to the edge's URL if that is defined. +The analogous description holds for the tail and the +tailURL. +A URL associated with the graph is used as a default link. +

+If the URL +of a node contains the escape sequence "\N", it will be replaced by +the node's name. +If the headURL is defined and contains the escape sequence "\N", +it will be replaced by +the headlabel, if defined. +The analogous result holds for the tailURL and the +taillabel.

imap_np ,
cmapx_np -
These are identical to the imap and cmapx formats, except they - rely solely on rectangles as active areas. +
These are identical to the imap and cmapx formats, except they +rely solely on rectangles as active areas.
ismap -
Produces HTML image map files. This is a predecessor (circa 1994) - of the IMAP format. Most servers now use the latter. - URLs can be attached to the root graph, - nodes and edges. Since edge - links are attached to edge labels, an edge must - have a label for its - URL to be used. For both nodes and edges, if the URL has the escape - sequence "\N" embedded in its string, this will be replaced with the - node or edge name. +
Produces HTML image map files. This is a predecessor (circa 1994) +of the IMAP format. Most servers now use the latter. +URLs can be attached to the root graph, +nodes and edges. Since edge +links are attached to edge labels, an edge must +have a label for its +URL to be used. For both nodes and edges, if the URL has the escape +sequence "\N" embedded in its string, this will be replaced with the +node or edge name.
jpg ,
jpeg ,
jpe -
Output JPEG compressed image files. +
Output JPEG compressed image files.
mif -
Generates Frame Maker MIF files. +
Generates Frame Maker MIF files.
mp -
Produces MetaPost output. +
Produces MetaPost output.
pcl -
Produces output in the PCL printer language. - HP-GL is a subset of - PCL, so that PCL output is the same as HP-GL, wrapped with some initial - and final commands to set the printer to and from HP-GL mode. +
Produces output in the PCL printer language. +HP-GL is a subset of +PCL, so that PCL output is the same as HP-GL, wrapped with some initial +and final commands to set the printer to and from HP-GL mode.
pdf -
Produces PDF output. - (This option assumes Graphviz includes the Cairo renderer.) - Alternatively, one can use the ps2 option to - produce PDF-compatible PostScript, and then use a ps-to-pdf converter. -

- Note: At present, this option does not support anchors, etc. To get these - included in your PDF output, use ps2. +

Produces PDF output. +(This option assumes Graphviz includes the Cairo renderer.) +Alternatively, one can use the ps2 option to +produce PDF-compatible PostScript, and then use a ps-to-pdf converter. +

+Note: At present, this option does not support anchors, etc. To get these +included in your PDF output, use ps2.

pic -
Outputs in PIC, the picture description language in the troff-family +
Outputs in PIC, the picture description language in the troff-family
plain ,
plain-ext -
The plain and plain-ext formats produce output using - a simple, line-based language. - The latter format differs in that, on edges, it provides port names - on head and tail nodes when applicable. -

- There are four types of statements. -

-   graph scale width height
-   node name x y width height label style shape color fillcolor
-   edge tail head n x1 y1 .. xn yn [label xl yl] style color
-   stop
-  
-
-
graph -
The width and height values give the width and height - of the drawing. The lower left corner of the drawing is at the origin. - The scale value indicates how the drawing should be scaled - if a size attribute was given and the drawing - needs to be scaled to conform to that size. If no scaling is necessary, - it will be set to 1.0. Note that all graph, node and edge - coordinates and lengths are given unscaled. -
node -
The name value is the name of the node, and x and y - give the node's position. The width and height are the - width and height of the node. - The label, - style, shape, color and fillcolor give the - node's label, - style, shape, - color and - fillcolor, - respectively, using attribute default values where necessary. If the - node does not have a style attribute, "solid" is used. -
edge -
The tail and head values give the names of the head and - tail nodes. In plain-ext format, the head or tail name will be appended - with a colon and a portname if the edge connects to the node at a port. - n is the number of control points defining the - B-spline forming the edge. This is followed by 2*n numbers giving - the x and y coordinates of the control points in order from tail to head. - If the edge has a label, this comes next - followed by the x and y coordinates of the label's position. - The edge description is completed by the edge's - style and color. - As with nodes, if a style is not defined, "solid" is used. -

- Note: The control points given in an edge statement define the - body of the edge. In particular, if the edge has an arrowhead to the - head or tail node, - there will be a gap between the last or first control points and the - boundary of the associated node. There are at least 3 possible ways - of handling this gap: -

    -
  • Arrange that the input graph uses dir=none, - arrowhead=none, or arrowtail=none for all edges. - In this case, the terminating control points will always touch the node. -
  • Consider the line segment joining the control point and the center - of the node, and determine the point where the segment intersects the - node's boundary. Then use the control point and the intersection point - as the main axis of an arrowhead. The problem with this approach is - that, if the edge has a port, the edge will not be pointing to the - center of the node. In this case, rather than use the control point - and center point, one can use the control point and its tangent. -
  • Arrange that the input graph uses headclip=false or - tailclip=false. In this case, the edge will terminate at - the node's center rather than its boundary. If arrowheads are used, - there will still be a gap, but normally this will occur within the - node. The application will still need to clip the spline to the node - boundary. Also, as with the previous item, if the edge points to - a node port, this technique will fail. -
-
- The output consists of one graph line, a sequence of - node lines, one per node, a sequence of - edge lines, one per edge, and a final stop - line. All units are in inches, represented by a floating point number. -

- Note that the plain formats provide minimal information, really giving not - much more than node positions and sizes, and edge spline control points. - These formats are usually most useful to applications wanting just this - geometric information, and willing to fill in all of the graphical details. - The only real advantages to these formats is their terseness and their - ease of parsing. In general, the dot and - xdot are preferable in terms of the quantity of - information provided. +

The plain and plain-ext formats produce output using +a simple, line-based language. +The latter format differs in that, on edges, it provides port names +on head and tail nodes when applicable. +

+There are four types of statements. +

+ graph scale width height
+ node name x y width height label style shape color fillcolor
+ edge tail head n x1 y1 .. xn yn [label xl yl] style color
+ stop
+
+
+
graph +
The width and height values give the width and height +of the drawing. The lower left corner of the drawing is at the origin. +The scale value indicates how the drawing should be scaled +if a size attribute was given and the drawing +needs to be scaled to conform to that size. If no scaling is necessary, +it will be set to 1.0. Note that all graph, node and edge +coordinates and lengths are given unscaled. +
node +
The name value is the name of the node, and x and y +give the node's position. The width and height are the +width and height of the node. +The label, +style, shape, color and fillcolor give the +node's label, +style, shape, +color and +fillcolor, +respectively, using attribute default values where necessary. If the +node does not have a style attribute, "solid" is used. +
edge +
The tail and head values give the names of the head and +tail nodes. In plain-ext format, the head or tail name will be appended +with a colon and a portname if the edge connects to the node at a port. +n is the number of control points defining the +B-spline forming the edge. This is followed by 2*n numbers giving +the x and y coordinates of the control points in order from tail to head. +If the edge has a label, this comes next +followed by the x and y coordinates of the label's position. +The edge description is completed by the edge's +style and color. +As with nodes, if a style is not defined, "solid" is used. +

+Note: The control points given in an edge statement define the +body of the edge. In particular, if the edge has an arrowhead to the +head or tail node, +there will be a gap between the last or first control points and the +boundary of the associated node. There are at least 3 possible ways +of handling this gap: +

    +
  • Arrange that the input graph uses dir=none, +arrowhead=none, or arrowtail=none for all edges. +In this case, the terminating control points will always touch the node. +
  • Consider the line segment joining the control point and the center +of the node, and determine the point where the segment intersects the +node's boundary. Then use the control point and the intersection point +as the main axis of an arrowhead. The problem with this approach is +that, if the edge has a port, the edge will not be pointing to the +center of the node. In this case, rather than use the control point +and center point, one can use the control point and its tangent. +
  • Arrange that the input graph uses headclip=false or +tailclip=false. In this case, the edge will terminate at +the node's center rather than its boundary. If arrowheads are used, +there will still be a gap, but normally this will occur within the +node. The application will still need to clip the spline to the node +boundary. Also, as with the previous item, if the edge points to +a node port, this technique will fail. +
+
+The output consists of one graph line, a sequence of +node lines, one per node, a sequence of +edge lines, one per edge, and a final stop +line. All units are in inches, represented by a floating point number. +

+Note that the plain formats provide minimal information, really giving not +much more than node positions and sizes, and edge spline control points. +These formats are usually most useful to applications wanting just this +geometric information, and willing to fill in all of the graphical details. +The only real advantages to these formats is their terseness and their +ease of parsing. In general, the dot and +xdot are preferable in terms of the quantity of +information provided.

png -
Produces output in the PNG (Portable Network Graphics) format. +
Produces output in the PNG (Portable Network Graphics) format.
ps -
Produces PostScript output. -

- Note: The default PostScript renderer can only handle the Latin-1 - character set. To get non-Latin-1 characters into PostScript output, - use -Tps:cairo, assuming your version was built with the - Cairo renderer. +

Produces PostScript output. +

+Note: The default PostScript renderer can only handle the Latin-1 +character set. To get non-Latin-1 characters into PostScript output, +use -Tps:cairo, assuming your version was built with the +Cairo renderer.

ps2 -
Produces PostScript output with PDF notations. It is assumed the output - will be directly converted into PDF format. The notations include PDF - bounding box information, so that the resulting PDF file can be correctly - used with pdf tools, such as pdflatex. - In addition, if a node has a URL - attribute, this gets translated into PDF code such that the node, - when viewed in a PDF-viewer, e.g., - acroread, - is a link to the given URL. If a URL is attached to the graph, this serves - as a base, such that relative URLs on nodes are derived from it. +
Produces PostScript output with PDF notations. It is assumed the output +will be directly converted into PDF format. The notations include PDF +bounding box information, so that the resulting PDF file can be correctly +used with pdf tools, such as pdflatex. +In addition, if a node has a URL +attribute, this gets translated into PDF code such that the node, +when viewed in a PDF-viewer, e.g., +acroread, +is a link to the given URL. If a URL is attached to the graph, this serves +as a base, such that relative URLs on nodes are derived from it.
svg ,
svgz -
Produce SVG output, - the latter in compressed format. +
Produce SVG output, +the latter in compressed format.
tga -
Produces Targa output. +
Produces Targa output.
tif ,
tiff -
Produces TIFF output. +
Produces TIFF output.
vml ,
vmlz -
Produces VML output, - the latter in compressed format. +
Produces VML output, +the latter in compressed format.
vrml -
Outputs graphs in the VRML format. - To get a 3D embedding, nodes must have a z - attribute. These can either be supplied as part of the input graph, or - be generated by neato provided dim=3 - and at least one node has a z value. -

- Line segments are drawn as cylinders. - In general, VRML output relies on having the PNG library to produce images - used to texture-fill the node shapes. However, if - shape=point, - a node is drawn as a 3D sphere. +

Outputs graphs in the VRML format. +To get a 3D embedding, nodes must have a z +attribute. These can either be supplied as part of the input graph, or +be generated by neato provided dim=3 +and at least one node has a z value. +

+Line segments are drawn as cylinders. +In general, VRML output relies on having the PNG library to produce images +used to texture-fill the node shapes. However, if +shape=point, +a node is drawn as a 3D sphere.

vtx -
Generates graph diagrams in the format for - Confluents's Visual Thought. +
Generates graph diagrams in the format for +Confluents's Visual Thought.
wbmp -
Produces output in the Wireless BitMap (WBMP) format, optimized for - mobile computing. +
Produces output in the Wireless BitMap (WBMP) format, optimized for +mobile computing.
xlib -
Creates an Xlib window and displays the output there. +
Creates an Xlib window and displays the output there.