Mercurial > hg > camir-aes2014
diff toolboxes/graph_visualisation/share/graphviz/doc/Dot.ref @ 0:e9a9cd732c1e tip
first hg version after svn
author | wolffd |
---|---|
date | Tue, 10 Feb 2015 15:05:51 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/toolboxes/graph_visualisation/share/graphviz/doc/Dot.ref Tue Feb 10 15:05:51 2015 +0000 @@ -0,0 +1,870 @@ + Quick Reference Guide for GraphViz + 20 February 2002 + + +Command-line Invocation + + ------------------------------------------------------------------------ +All GraphViz programs have a similar invocation: + cmd [ flags ] [ input files ] +If no input files are supplied, the program reads from stdin. + +Flags + +-Gname=value + Set a graph attribute. +-Nname=value + Set a default node attribute. +-Ename=value + Set a default edge attribute. +-Tformat + Set output language to one of the supported formats. By default, + attributed dot is produced. +-V + Emit version information and exit. +-llibfile + User-supplied, device-dependent library files. Multiple libraries may + be given. These names are passed to the code generator at the beginning + of output. +-n[num] + Sets no-op flag in neato. If set, neato assumes nodes have already been + positioned and have a pos attribute giving this position. It then just + computes the edge layouts and emits the graph in the appropriate + format. If num is supplied and > 1, neato checks for previously + positioned edges, with control points provided in the pos attribute. It + uses these if given; otherwise, it computes the edge layout. +-ooutfile + Write output to file outfile. By default, output goes to stdout. +-s[scale] + Set input scale to scale. If this value is omitted, 72.0 is used. This + number is used to convert the point coordinate units used in the pos + attribute into inches. For example, dot -Tdot produces pos values in + points, with 72 per inch. Thus, to use this output as input to neato + -n, one needs -s (equivalently, -s72). +-v + Verbose mode +-x + In neato, on input, prune isolated nodes and peninsulas. This removes + uninteresting graph structure and produces a less cluttered drawing. + +Note that the file contents override the -G, -N and -E flags. In addition, +these flags cause the related attributes to be permanently attached to the +graph. Thus, if attributed dot is used for output, the graph will have these +attributes. + + ------------------------------------------------------------------------ + +The DOT Language + + ------------------------------------------------------------------------ +digraph G {foo -> bar; ... } or graph G { foo -- bar; ...} + +To connect all pairs: + {foo bar}->{baz bart} + +To make a chain of links: + foo->bar->baz + +Commas inside [...] and semicolons inside {...} are optional. + +Quotes are needed on attribute values to protect spaces, commas, periods, etc. + +// C++ like comment: to end of line +/* C-like comment: between delimiters */ + +For a complete language description, see + + http://www.research.att.com/~erg/graphviz/info/lang.html + + ------------------------------------------------------------------------ + +Attributes + + ------------------------------------------------------------------------ + + Name Used By Type Default Minimum Notes + Damping G double 0.99 0.0 neato only + Epsilon G double (.0001 * # nodes) neato only + URL ENGC string + arrowhead E arrowType normal + arrowsize E double 1.0 0.0 + arrowtail E arrowType normal + bb G rect write-only + bgcolor G color + bottomlabel N string "" + center G bool false + clusterrank G clusterMode local dot only + color ENC color black + comment ENG string "" + compound G bool false dot only + concentrate G bool false dot only + constraint E bool true dot only + decorate E bool false + + dir E dirType forward(directed) + none(undirected) + distortion N double 0.0 -100.0 + + fillcolor NC color lightgrey(nodes) + black(clusters) + fixedsize N bool false + fontcolor ENGC color black + fontname ENGC string "Times-Roman" + fontpath G string "" + fontsize ENGC double 14.0 1.0 + group N string "" dot only + headURL E string "" + headlabel E string "" + headport E portPos center + height N double 0.5 0.02 + K G double 1.0 0.0 sfdp only + + label ENGC string "" + "\N" (nodes) + labelangle E double -25.0 -180.0 + labeldistance E double 1.0 0.0 + labelfloat E bool false + labelfontcolor E color black + labelfontname E string "Times-Roman" + labelfontsize E double 11.0 1.0 + labeljust C string "" dot only + + labelloc GC string "t"(clusters) dot only + "b"(root graphs) + layer EN layerRange "" + layers G layerList "" + len E double 1.0 neato only + levels G int MAXINT 0 sfdp only + lhead E string "" dot only + lp EGC point write-only + ltail E string "" dot only + + margin G double + pointf + maxiter G int MAXINT neato only + mclimit G double 1.0 dot only + minlen E int 1 0 dot only + model G string "" neato only + nodesep G double 0.25 0.02 dot only + normalize G bool false neato only + nslimit + nslimit1 G double dot only + ordering G string "" dot only + orientation N double 0.0 360.0 + orientation G string "" + + overlap G string "" neato/sfdp only + bool + page G pointf + pagedir G pagedir BL + peripheries N int 0 + pin N bool neato only + + pos EN point + splineType + quadtree G string "" sfdp only + quantum G double 0.0 0.0 + rank S rankType dot only + rankdir G rankdir TB dot only + ranksep G double 0.5 0.02 + ratio G double + rects N rect write-only + regular N bool false + remincross G bool false dot only + repulsiveforce G double 1 0.0 sfdp only + rotate G int 0 + samehead E string "" dot only + sametail E string "" dot only + samplepoints G int 8 + searchsize G int 30 dot only + sep G double 0.01 neato only + shape N shape ellipse + shapefile N string "" + showboxes ENG int 0 0 dot only + sides N int 4 0 + size G pointf + skew N double 0.0 -100.0 + smoothing G string "" sfdp only + splines G bool false neato only + + start G string "" neato only + int + style ENC style + styleheet G style + tailURL E string "" + taillabel E string "" + tailport E portPos center + toplabel N string "" + vertices N pointfList write-only + voro_margin G double 0.05 0.0 neato only + w E double 1.0 neato only + + weight E double 1.0 0(dot) + 1(neato) + width N double 0.75 0.01 + + z N double 0.0 -MAXFLOAT + -1000 + ------------------------------------------------------ +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 the Used By field, the characters E, N, G and C represent edges, nodes, +the root graph and cluster subgraphs, respectively. This field indicates +which graph component uses the attribute. + ------------------------------------------------------------------------ + +Attribute Descriptions + +Damping + Factor damping force motions. On each iteration, a nodes movement is + limited to this factor of its potential motion. By being less than 1.0, + the system tends to ``cool'', thereby preventing cycling. +Epsilon + Terminating condition. If the length squared of all energy gradients + are < Epsilon, the algorithm stops. +URL + Incorporated into device-dependent output. At present, used for ps2, + i*map and svg. For ps2, URLs can be attached to nodes and the root + graph. When distilled to PDF, such nodes are active links and the graph + URL can be used as a base URL. For i*map, URLs can be attached to + nodes, edges and the root graph. If the node or edge URL contains "\N", + this is replaced by the object's name. For svg, URLs can be attached to + nodes, edges and clusters, with "\N" replacement done for all three. +arrowhead + Style of arrowhead on head of edge. +arrowsize + Multiplicative scale factor for arrowheads. +arrowtail + Style of arrowhead on tail of edge. +bb + Bounding box of drawing in integer points. +bgcolor + Color used as background for canvas, plus initial fill color. +bottomlabel + Additional label near bottom of nodes of shape M*. +center + If true, the drawing is centered in the output canvas. +clusterrank + 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. If the cluster + has a label parameter, this label is displayed within the rectangle. + Note also that there can be clusters within clusters. At present, the + modes "global" and "none" appear to be identical, both turning off the + special cluster processing. +color + Basic drawing color for graphics. +comment + Comments are inserted into output. Device-dependent +compound + If true, allow edges between clusters. (See lhead and ltail below.) +concentrate + If true, use edge concentrators. +constraint + If false, the edge is not used in ranking the nodes. For example, in + the graph + + digraph G { + a -> c; + a -> b; + b -> c [constraint=false]; + } + + + the edge b -> c does not add a constraint during rank assignment, so + the only constraints are that a be above b and c. + +decorate + If true, attach edge label to edge by a 2-segment polyline, underlining + the label, then going to the closest point of spline. +dir + Set edge type for drawing arrowheads. +distortion + Distortion factor for shape=polygon. Positive values cause top part to + be larger than bottom; negative values do the opposite. +fillcolor + If fillcolor is not defined, color is used. If this is not defined, the + default is used, except for shape=point or when the output format is + MIF, which use black by default. +fixedsize + If true, the node size is kept fixed and not expanded to contain the + text label. +fontcolor + Color used for text. +fontname + Font used for text. +fontpath + Directory list used by libgd to search for bitmap fonts. 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. +fontsize + Font size, in points, used for text. +group + If the end points of an edge belong to the same group, i.e., have the + same group attribute, parameters are set to avoid crossings and keep + the edges straight. +headURL + For the output format imap, or cmap, if headURL is defined, it is + output as part of the head label of the edge. If headURL contains + "\N", this will be replaced by the head label text. +headlabel + Text label to be placed near head of edge. +headport + Indicates where on the head node to attach the head of the edge. In the + default case, the edge is aimed towards the center of the node, and + then clipped at the node boundary. +height + Height of node, in inches. +K constant used in the Fruchterman-Reingold force directed model. +label + Text label attached to objects. The escape sequences "\n", "\l" and + "\r" divide the label into lines, centered, left-justified and + right-justified, respectively. The escape sequence "\N" represents a + node's name. If a node's shape is record, then the label can have a + special format which describes the record layout. +labelangle + Angle, in degrees, that the headlabel(taillabel) is rotated from the + angle the edge makes incident with the head(tail) node, respectively. +labeldistance + Multiplicative scaling factor adjusting the distance that the + headlabel(taillabel) is the from head(tail) node. +labelfloat + If true, allows edge labels to be less constrained in position. In + particular, it may appear on top of other edges. +labelfontcolor + Color used for headlabel and taillabel. +labelfontname + Font used for headlabel and taillabel. +labelfontsize + Font size, in points, used for headlabel and taillabel. +labeljust + Justification for cluster labels. If "r", the label is right-justified + within bounding rectangle; otherwise, left-justified. +labelloc + 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 graph labels go on the bottom and cluster + labels go on the top. +layer + Specifies layers in which the node or edge is present. +layers + Specifies a linearly ordered list of layer names attached to the graph + 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). +len + Preferred edge length, in inches. +levels + Number of levels allowed in the multilevel scheme. Default is MAXINT. +lhead + Logical head of an edge. When compound is true, 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. +lp + Label position, in points. +ltail + Logical tail of an edge. When compound is true, 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. +margin + Set x and y margins of canvas, in inches. In first case, both margins + are set equal to the given value. +maxiter + Sets the number of iterations used. +mclimit + Multiplicative scale factor used to alter the MinQuit (default = 8) and + MaxIter (default = 24) parameters used during crossing minimization. + These correspond to the number of tries without improvement before + quitting and the maximum number of iterations in each pass. +minlen + Minimum edge length (rank difference between head and tail). +model + If "circuit", use circuit resistance model to compute dissimilarity + values; otherwise, use shortest path model. +nodesep + Minimum space between two adjacent nodes in the same rank, in inches. +normalize + If set, normalize coordinates of final layout so that the first point + is at the origin, and then rotate the layout so that the first edge is + horizontal. +nslimit , +nslimit1 + Used to set number of iterations in network simplex applications. + nslimit is used in computing node x coordinates, nslimit1 for ranking + nodes. If defined, # iterations = nslimit(1) * # nodes; otherwise, # + iterations = MAXINT. +ordering + If "out" for a graph G, and n is a node in G, then edges n->* appear + left-to-right in the same order in which they are defined. +orientation + Angle, in degrees, used to rotate node shapes. +orientation + If "[lL]*", set graph orientation to landscape Used only if rotate is + not defined. +overlap + If "scale", remove node overlaps by scaling; if converts to false, + remove node overlaps by the Voronoi technique; otherwise, leave + overlaps. +page + Width and height of output pages, in inches. If this is set and is + smaller than the size of the layout, a rectangular array of pages of + the specified page size is overlaid on the layout, with origins aligned + in the lower-left corner, thereby partitioning the layout into pages. + The pages are then produced one at a time, in pagedir order. +pagedir + If the page attribute is set and applicable, this attribute specifies + the order in which the pages are emitted. This is limited to one of the + 8 row or column major orders. +peripheries + Set number of peripheries used in polygonal shapes. +pin + If true and the node has a pos attribute on input, neato prevents the + node from moving from the input position. This property can also be + specified in the pos attribute itself (cf. the point type). +pos + Position of node, or spline control points, in points. In neato, pos + can be used to set initial position of a node. Concerning this, see the + -s command line flag. +quantum + If quantum > 0.0, node label dimensions will be rounded to integral + multiples of the quantum. +quadtree + Quadtree scheme to use. Values are "normal" (default), "fast" or "none". + "fast" gives about 2-4 overall speedup compared with "normal", though + layout quality can suffer a little. +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="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". 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. If rankdir="LR", the graph is laid out + from left to right, i.e., directed edges tend to go from left to right. + By default, graphs are laid out from top to bottom. +ranksep + In dot, this the gives desired rank separation, in inches. This is the + minimum vertical distance between the bottom of the nodes in one rank + and the tops of nodes in the next. If the value contains "equally", the + centers of all ranks are spaced equally apart. Note that both settings + are possible, e.g., ranksep = "1.2 equally". In twopi, specifies radial + separation of ranks. +ratio + 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, the drawing + height is scaled up to achieve the desired ratio; if the actual ratio + is greater than that desired ratio, the drawing width is scaled up. + + If ratio = "fill" and the size attribute is set, the drawing is scaled + to achieve the aspect ratio implied by size. As size is set, when the + drawing is later scaled to fit that rectangle, the resulting picture + will fill the rectangle. + + 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 reduces the balance and symmetry. + + If ratio = "auto", the page attribute is set and the graph cannot be + drawn on a single page, then size is set to an ``ideal'' value. In + particular, the size in a given dimension will be the smallest integral + multiple of the page size in that dimension which is at least half the + current size. The two dimensions are then scaled independently to the + new size. +rects + Rectangles for fields of records, in points. +regular + If true, force polygon to be regular. +repulsiveforce + The power of repulsive force used in an extended Fruchterman-Reingold + force directed model. Default is 1. Values larger than 1 tend to reduce + the warping effect at the expensive of less clustering. +remincross + If true and there are multiple clusters, run cross minimization a + second time. +rotate + If 90, set drawing orientation to landscape. +samehead + Edges with the same head and the same samehead value are aimed at the + same point on the head. +sametail + Edges with the same tail and the same sametail value are aimed at the + same point on the tail. +samplepoints + If the input graph defines the vertices attribute, and output is plain* + or attributed dot, this give the number of points used to represent + circles and ellipses. It plays the same role in neato, when adjusting + the layout to avoid overlapping nodes. +searchsize + During network simplex, maximum number of edges with negative cut + values to search when looking for one with minimum cut value. +sep + Fraction to increase polygons (multiply coordinates by 1 + sep) for + purposes of determining overlap. Guarantees a minimal non-zero distance + between nodes. +shape + Set shape of node. +shapefile + For output format is ps* or svg*, if non-empty, taken as a filename + containing a device-dependent description of a node's shape. +showboxes + Print guide boxes in PostScript at the beginning of routesplines if 1, + or at the end if 2. (Debugging) +sides + Number of sides if shape=polygon. +size + Maximum width and height of drawing, inches. If defined and the drawing + is too large, the drawing is uniformly scaled down so that it fits + within the given size. Note that there is some interaction between the + size and ratio attributes. +skew + Skew factor for shape=polygon. Positive values skew top of polygon to + right; negative to left. +smoothing + A post processing step to smooth out uneven distribution of nodes. Possible + values are "none" (default), "avg_dist", "graph_dist", "power_dist", "rng", + "spring" and "triangle". +splines + If true, draw edges as splines. This requires non-overlapping nodes + (cf. overlap). +start + Parameter used to determine the initial layout of nodes. By default, + nodes are randomly placed in a square whose sides have length (# + nodes). The same seed is always used for the random number generator, + so the initial placement is repeatable. If start converts to an + integer, this is used as a seed value for the random number generator. + If start is "regular", the nodes are placed regularly about a circle. + Finally, if start is defined but is not one of the above cases, the + current time is used to pick a seed. +style + Set style for node or edge. For cluster subgraph, if "filled", the + cluster box's background is filled. +stylesheet + The URL of a CSS stylesheet to be referenced from the output file. + Relevant only for SVG output. +tailURL + When the output format is imap, or cmap, if tailURL is defined, it is + output as part of the tail label of the edge. If tailURL + contains "\N", this will be replaced by the tail label text. +taillabel + Text label to be placed near tail of edge. +tailport + Indicates where on the tail node to attach the tail of the edge. +toplabel + Additional label near top of nodes of shape M*. +vertices + If the input graph defines this attribute, the node is polynomial, and + output is plain* or attributed dot, this attribute provides the + coordinates of the vertices of the node's polynomial, in points. If the + node is an ellipse or circle, the samplepoints attribute affects the + output. +voro_margin + Factor to scale up drawing to allow margin for expansion in Voronoi + technique. dim' = (1+2*margin)*dim. +w + Redundant definition of weight in neato, cf. bug 9. +weight + Weight of edge. Usually, the heavier the weight, the shorter (and, in + dot, straighter and more vertical) an edge is. +width + Width of node, in inches. +z + Provides z coordinate for the node when output format is VRML. + + ------------------------------------------------------------------------ + +Attribute Type Descriptions + +arrowType + "normal" "inv" + + "dot" "invdot" + + "odot" "invodot" + + "none" +clusterMode + "local","global","none" +color + "#%2x%2x%2x" RGB + "#%2x%2x%2x%2x"RGBA + "%lf,%lf,%lf" HSV 0.0 <= values <= 1.0 + string color name +dirType + For an edge T -> H; + + "forward" "back" + + "both" "none" + + For undirected edges T -- H;, one of the nodes, usually the righthand + one, is treated as the head for the purpose of interpreting "forward" + and "back". +layerList + list of strings separated by colons, tabs or spaces, defining layer + names and implicitly numbered 1,2,... +layerRange + layerId or layerId[:\t ]layerId, + where layerId = "all", decimal integer or layer name. (An integer i + corresponds to layer i.) +pagedir + "BL", "BR", "TL", "TR", "RB", "RT", "LB", "LT". 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 to right. This means the bottom row is + traversed first, from left to right, then the next row up, from left to + right, and so on, until the topmost row is traversed. +point + "%d,%d"('!') representing the point (x,y). The optional '!' indicates + the node position should not change (input-only). +pointf + "%lf,%lf" representing the point (x,y). +pointfList + list of pointf, separated by spaces. +portPos + "n","ne","e","se","s","sw","w","nw" These correspond to the obvious + compass points on the node. +rankType + "same", "min", "source", "max", "sink" +rankdir + "LR". Any other value corresponds to a top-down layout. +rect + "%d,%d,%d,%d" The rect llx,lly,urx,ury gives the coordinates, in + points, of the lower-left corner (llx,lly) and the upper-right corner + (urx,ury). +shape + A string specifying the shape of a node. There are three main types of + shapes : polygon-based, record-based and PostScript-based. +splineType + spline ( ';' spline )* + where spline= (endp)? (startp)? point (triple)]* + and triple = point point point + 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 + 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. +style + styleItem ( ',' styleItem )* + where styleItem= name or name'('args')' + and args = name ( ',' name )* + and name = [^)(, ][^)(,]* + At present, the recognized style names comprise "dashed", "dotted", + "solid", "invis" and "bold" for nodes and edges, and "filled", + "diagonals" and "rounded" for nodes only. Additional styles are + available in device-dependent form. Style lists are passed to device + drivers, which can use this to generate appropriate output. + + Note that, at present, "rounded" cancels "filled", except for circles + and ellipses. This holds for the Mrecord shape, which is rounded by + definition. + + ------------------------------------------------------------------------ + +Output Formats + + ------------------------------------------------------------------------ +The output format is specified with the -Tlang flag on the command line, + where lang is one of the following: + Command-line + parameter Format + canon + cmap Client-side imagemap + dot DOT + fig FIG + gd + gd2 GD/GD2 formats + gif GIF + hpgl HP-GL/2 + imap Server-side imagemap + ismap Server-side imagemap (deprecated) + jpg + jpeg JPEG + mif FrameMaker MIF format + mp MetaPost + pcl PCL + pic PIC + plain + plain-ext Simple text format + png Portable Network Graphics format + ps PostScript + ps2 PostScript for PDF + svg + svgz Scalable Vector Graphics + vrml VRML + vtx Visual Thought format + wbmp Wireless BitMap format + ------------------------------------------------------------------------ + +Format Descriptions + +canon , +dot + These two formats produce output in variations of the dot language. + Using canon produces a prettyprinted version of the input, with no + layout performed. + + dot corresponds to attributed dot, 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. +fig + 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. +gif + Outputs GIF bitmap images. +hpgl + Produces output in the HP-GL/2 vector graphic printer language. +imap +cmap + Produces map files for server-side and client-side image maps, + respectively. 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, given the dot file + + /* x.dot */ + digraph G { + URL="http://www.research.att.com/"; + command [URL="command.html"]; + command -> output [URL="colors.html"]; + } + + + this can be processed twice: + + dot -Timap > x.map + dot -Tgif > x.gif + + + and then be referred to in a web page, such as + + <A HREF="x.map"> + <IMG SRC="x.gif" ISMAP> + </A> + + + URLs can be attached to the root graph, nodes and edges. If the URL of + a node contains the escape sequence "\N", it will be replaced by the + node's name. If an edge has a URL, various points along the edge (but + not 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. If the + headURL contains the escape sequence "\N", it will be replaced by the + headlabel, if defined. The analogous description holds for the tail, + tailURL and taillabel. +ismap + Produces HTML image map files. This is a predecessor (circa 1994) of + the IMAP format. Most servers now user 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 + Output JPEG compressed image files. This format relies on the + installation having the JPEG library. +mif + Generates Frame Maker MIF files. +mp + 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. +pic + 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. 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. + 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. +png + Produces output in the PNG (Portable Network Graphics) format. PNG + relies on having libz and the PNG library. +ps + Produces PostScript output. +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. +svg , +svgz + Produce SVG output, the latter in compressed format. SVG relies on + having libz. +vrml + Outputs graphs in the VRML format. VRML relies on having the PNG + library. +vtx + Generates graph diagrams in the format for Confluents's Visual Thought. +wbmp + Produces output in the Wireless BitMap (WBMP) format, optimized for + mobile computing. + + ------------------------------------------------------------------------