wolffd@0: .TH OSAGE 1 "27 May 2009" \*(eX wolffd@0: .SH NAME wolffd@0: osage \- filter for drawing clustered graphs wolffd@0: .SH SYNOPSIS wolffd@0: \fBosage\fR wolffd@0: [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] wolffd@0: [\fB\-T\fIlang\fR] wolffd@0: [\fB\-l\fIlibfile\fR] wolffd@0: [\fB\-o\fIoutfile\fR] wolffd@0: [\fB\-O\fR] wolffd@0: [\fB\-P\fR] wolffd@0: [\fB\-v\fR] wolffd@0: [\fB\-V\fR] wolffd@0: [files] wolffd@0: .SH DESCRIPTION wolffd@0: .I osage wolffd@0: draws clustered graphs. As input, it takes any graph in the wolffd@0: .I dot wolffd@0: format. It draws the graph recursively. At each level, there will wolffd@0: be a collection of nodes and a collection of cluster subgraphs. wolffd@0: The internals of each cluster subgraph are laid out, then the wolffd@0: cluster subgraphs and nodes at the current level are positioned wolffd@0: relative to each other, treating each cluster subgraph as a node. wolffd@0: .P wolffd@0: At each level, the nodes and cluster subgraphs are viewed as rectangles wolffd@0: to be packed together. At present, edges are ignored during packing. wolffd@0: Packing is done using the standard packing functions. In particular, wolffd@0: the graph attributes \fBpack\fP and \fBpackmode\fP control the layout. wolffd@0: Each graph and cluster can specify its own values for these attributes. wolffd@0: Remember also that a cluster inherits its attribute values from wolffd@0: its parent graph. wolffd@0: .P wolffd@0: After all nodes and clusters, edges are routed based on the value of wolffd@0: the \fBsplines\fP attribute. wolffd@0: .SH OUTPUT FORMATS wolffd@0: Osage uses an extensible plugin mechanism for its output renderers, wolffd@0: so to see what output formats your installation of osage supports wolffd@0: you can use ``osage \-Txxx'' (where xxx is an unlikely format) wolffd@0: and check the warning message. wolffd@0: Also, The plugin mechanism supports multiple implementations wolffd@0: of the output formats. wolffd@0: To see what variants are available, use, for example: ``osage \-Tpng:'' wolffd@0: and to force a particular variant, use, for example: ``osage \-Tpng:gd'' wolffd@0: .P wolffd@0: Traditionally, osage supports the following: wolffd@0: \fB\-Tps\fP (PostScript), wolffd@0: \fB\-Tsvg\fP \fB\-Tsvgz\fP (Structured Vector Graphics), wolffd@0: \fB\-Tfig\fP (XFIG graphics), wolffd@0: \fB\-Tmif\fP (FrameMaker graphics), wolffd@0: \fB\-Thpgl\fP (HP pen plotters), and \fB\-Tpcl\fP (Laserjet printers), wolffd@0: \fB\-Tpng\fP \fB\-Tgif\fP (bitmap graphics), wolffd@0: \fB\-Tdia\fP (GTK+ based diagrams), wolffd@0: \fB\-Timap\fP (imagemap files for httpd servers for each node or edge wolffd@0: that has a non\(hynull "href" attribute.), wolffd@0: \fB\-Tcmapx\fP (client\(hyside imagemap for use in html and xhtml). wolffd@0: Additional less common or more special\(hypurpose output formats wolffd@0: can be found at http://www.graphviz.org/cvs/doc/info/output.html.) wolffd@0: .P wolffd@0: Alternative plugins providing support for a given output format wolffd@0: can be found from the error message resulting from appending a ':' to the format. e.g. \fB-Tpng:\fP wolffd@0: The first plugin listed is always the default. wolffd@0: .SH GRAPH FILE LANGUAGE wolffd@0: Here is a synopsis of the graph file language, traditionally using the extension \fB.gv\fR or \fB.dot\fR, for graphs: wolffd@0: .PP wolffd@0: [\fBstrict\fR] (\fBgraph\fR|\fBdigraph\fR) \fIname\fP { \fIstatement\(hylist\fP }\fR wolffd@0: .br wolffd@0: Is the top level graph. If the graph is \fBstrict\fR then multiple edges are wolffd@0: not allowed between the same pairs of nodes. wolffd@0: If it is a directed graph, indicated by \fBdigraph\fR, wolffd@0: then the \fIedgeop\fR must be "\->". If it is an undirected \fBgraph\fR wolffd@0: then the \fIedgeop\fR must be "\-\-". wolffd@0: Statements may be: wolffd@0: .PP wolffd@0: \fIname\fB=\fIval\fB;\fR wolffd@0: .br wolffd@0: \fBnode [\fIname\fB=\fIval\fB];\fR wolffd@0: .br wolffd@0: \fBedge [\fIname\fB=\fIval\fB];\fR wolffd@0: .br wolffd@0: Set default graph, node, or edge attribute \fIname\fP to \fIval\fP. wolffd@0: Any subgraph, node, or edge appearing after this inherits the new wolffd@0: default attributes. wolffd@0: .PP wolffd@0: \fBn0 [\fIname0=val0,name1=val1,...\fB];\fR wolffd@0: Creates node \fBn0\fP (if it does not already exist) wolffd@0: and sets its attributes according to the optional list. wolffd@0: .PP wolffd@0: \fBn0 \fIedgeop\fR n1 \fIedgeop\fR \fI...\fB \fIedgeop\fR nn [\fIname0=val0,name1=val1,...\fB];\fR wolffd@0: .br wolffd@0: Creates edges between nodes \fBn0\fP, \fBn1\fP, ..., \fBnn\fP and sets wolffd@0: their attributes according to the optional list. wolffd@0: Creates nodes as necessary. wolffd@0: .PP wolffd@0: [\fBsubgraph \fIname\fB] { \fIstatement\(hylist \fB}\fR wolffd@0: .br wolffd@0: Creates a subgraph. Subgraphs may be used in place wolffd@0: of \fBn0\fP, ..., \fBnn\fP in the above statements to create edges. wolffd@0: [\fBsubgraph \fIname\fR] is optional; wolffd@0: if missing, the subgraph is assigned an internal name. wolffd@0: .PP wolffd@0: Comments may be /*C\(hylike*/ or //C++\(hylike. wolffd@0: wolffd@0: .PP wolffd@0: Attribute names and values are ordinary (C\(hystyle) strings. wolffd@0: The following sections describe attributes that control graph layout. wolffd@0: wolffd@0: .SH "GRAPH ATTRIBUTES" wolffd@0: .PP wolffd@0: \fBsize="\fIx,y\fP"\fR sets bounding box of drawing in inches. wolffd@0: .PP wolffd@0: \fBpage="\fIx,y\fP"\fR sets the PostScript pagination unit. wolffd@0: .PP wolffd@0: \fBratio=\fIf\fR sets the aspect ratio to \fIf\fP which may be wolffd@0: a floating point number, or one of the keywords \fBfill\fP, wolffd@0: \fBcompress\fP, or \fBauto\fP. wolffd@0: .PP wolffd@0: \fBpagedir=\fR[TBLR][TBLR] sets the major and minor order of pagination. wolffd@0: .PP wolffd@0: \fBrotate=90\fR sets landscape mode. wolffd@0: (\fBorientation=land\fR is backward compatible but obsolete.) wolffd@0: .PP wolffd@0: \fBcenter=\fIn\fR a non\(hyzero value centers the drawing on the page. wolffd@0: .PP wolffd@0: \fBlayers="\fIid:id:id:id\fR" is a sequence of layer identifiers for wolffd@0: overlay diagrams. The PostScript array variable \fIlayercolorseq\fR wolffd@0: sets the assignment of colors to layers. The least index is 1 and wolffd@0: each element must be a 3\(hyelement array to be interpreted as a color coordinate. wolffd@0: .PP wolffd@0: \fBcolor=\fIcolorvalue\fR sets foreground color (\fBbgcolor\fP for background). wolffd@0: .PP wolffd@0: \fBhref=\fI"url"\fR the default url for image map files; in PostScript files, wolffd@0: the base URL for all relative URLs, as recognized by Acrobat Distiller wolffd@0: 3.0 and up. wolffd@0: .PP wolffd@0: \fBURL=\fI"url"\fR ("URL" is a synonym for "href".) wolffd@0: .PP wolffd@0: \fBstylesheet=\fI"file.css"\fR includes a reference to a stylesheet wolffd@0: in \-Tsvg and \-Tsvgz outputs. Ignored by other formats. wolffd@0: .PP wolffd@0: \fBsplines\fR. If set to \fItrue\fR, edges are wolffd@0: drawn as splines. wolffd@0: If set to \fIpolyline\fR, edges are wolffd@0: drawn as polylines. wolffd@0: If set to \fIortho\fR, edges are wolffd@0: drawn as orthogonal polylines. wolffd@0: In all of these cases, the nodes may not overlap. wolffd@0: If \fBsplines=\fIfalse\fR or \fBsplines=\fIline\fR, edges are wolffd@0: drawn as line segments. wolffd@0: The default is \fIfalse\fR. wolffd@0: wolffd@0: .SH "NODE ATTRIBUTES" wolffd@0: .PP wolffd@0: \fBheight=\fId\fR or \fBwidth=\fId\fR sets minimum height or width. wolffd@0: Adding \fBfixedsize=true\fP forces these to be the actual size wolffd@0: (text labels are ignored). wolffd@0: .PP wolffd@0: \fBshape=record polygon epsf \fIbuiltin_polygon\fR wolffd@0: .br wolffd@0: \fIbuiltin_polygon\fR is one of: \fBplaintext ellipse oval circle egg wolffd@0: triangle box diamond trapezium parallelogram house hexagon octagon wolffd@0: note tab box3d component.\fR wolffd@0: (Polygons are defined or modified by the following node attributes: wolffd@0: \fBregular\fR, \fBperipheries\fR, \fBsides\fR, \fBorientation\fR, wolffd@0: \fBdistortion\fR and \fBskew\fR.) \fBepsf\fR uses the node's wolffd@0: \fBshapefile\fR attribute as the path name of an external wolffd@0: EPSF file to be automatically loaded for the node shape. wolffd@0: .PP wolffd@0: \fBlabel=\fItext\fR where \fItext\fP may include escaped newlines wolffd@0: \\\|n, \\\|l, or \\\|r for center, left, and right justified lines. wolffd@0: The string '\\N' value will be replaced by the node name. wolffd@0: The string '\\G' value will be replaced by the graph name. wolffd@0: Record labels may contain recursive box lists delimited by { | }. wolffd@0: Port identifiers in labels are set off by angle brackets < >. wolffd@0: In the graph file, use colon (such as, \fBnode0:port28\fR). wolffd@0: .PP wolffd@0: \fBfontsize=\fIn\fR sets the label type size to \fIn\fP points. wolffd@0: .PP wolffd@0: \fBfontname=\fIname\fR sets the label font family name. wolffd@0: .PP wolffd@0: \fBcolor=\fIcolorvalue\fR sets the outline color, and the default fill color wolffd@0: if style=filled and \fBfillcolor\fR is not specified. wolffd@0: .PP wolffd@0: \fBfillcolor=\fIcolorvalue\fR sets the fill color wolffd@0: when style=filled. If not specified, the fillcolor when style=filled defaults wolffd@0: to be the same as the outline color. wolffd@0: .PP wolffd@0: \fBfontcolor=\fIcolorvalue\fR sets the label text color. wolffd@0: .PP wolffd@0: A \fIcolorvalue\fP may be "\fIh,s,v\fB"\fR (hue, saturation, brightness) wolffd@0: floating point numbers between 0 and 1, or an X11 color name such as wolffd@0: \fBwhite black red green blue yellow magenta cyan\fR or \fBburlywood\fR, wolffd@0: or a "\fI#rrggbb" (red, green, blue, 2 hex characters each) value. wolffd@0: .PP wolffd@0: \fBstyle=filled solid dashed dotted bold invis\fP or any Postscript code. wolffd@0: .PP wolffd@0: \fBlayer=\fIid\fR or \fIid:id\fR or "all" sets the node's active layers. wolffd@0: The empty string means no layers (invisible). wolffd@0: .PP wolffd@0: The following attributes apply only to polygon shape nodes: wolffd@0: .PP wolffd@0: \fBregular=\fIn\fR if \fIn\fR is non\(hyzero then the polygon is made wolffd@0: regular, i.e. symmetric about the x and y axis, otherwise the wolffd@0: polygon takes on the aspect ratio of the label. wolffd@0: \fIbuiltin_polygons\fR that are not already regular are made regular wolffd@0: by this attribute. wolffd@0: \fIbuiltin_polygons\fR that are already regular are not affected (i.e. wolffd@0: they cannot be made asymmetric). wolffd@0: .PP wolffd@0: \fBperipheries=\fIn\fR sets the number of periphery lines drawn around wolffd@0: the polygon. This value supersedes the number of periphery lines wolffd@0: of \fIbuiltin_polygons\fR. wolffd@0: .PP wolffd@0: \fBsides=\fIn\fR sets the number of sides to the polygon. \fIn\fR<3 wolffd@0: results in an ellipse. wolffd@0: This attribute is ignored by \fIbuiltin_polygons\fR. wolffd@0: .PP wolffd@0: \fBorientation=\fIf\fR sets the orientation of the first apex of the wolffd@0: polygon counterclockwise from the vertical, in degrees. wolffd@0: \fIf\fR may be a floating point number. wolffd@0: The orientation of labels is not affected by this attribute. wolffd@0: This attribute is added to the initial orientation of \fIbuiltin_polygons.\fR wolffd@0: .PP wolffd@0: \fBdistortion=\fIf\fR sets the amount of broadening of the top and wolffd@0: narrowing of the bottom of the polygon (relative to its orientation). wolffd@0: Floating point values between \-1 and +1 are suggested. wolffd@0: This attribute is ignored by \fIbuiltin_polygons\fR. wolffd@0: .PP wolffd@0: \fBskew=\fIf\fR sets the amount of right\(hydisplacement of the top and wolffd@0: left\(hydisplacement of the bottom of the polygon (relative to its wolffd@0: orientation). wolffd@0: Floating point values between \-1 and +1 are suggested. wolffd@0: This attribute is ignored by \fIbuiltin_polygons\fR. wolffd@0: .PP wolffd@0: \fBhref=\fI"url"\fR sets the url for the node in imagemap, PostScript and SVG wolffd@0: files. wolffd@0: The substrings '\\N' and '\\G' are substituted in the same manner as wolffd@0: for the node label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the node label string. wolffd@0: .PP wolffd@0: \fBURL=\fI"url"\fR ("URL" is a synonym for "href".) wolffd@0: .PP wolffd@0: \fBtarget=\fI"target"\fR is a target string for client\(hyside imagemaps wolffd@0: and SVG, effective when nodes have a URL. wolffd@0: The target string is used to determine which window of the browser is used wolffd@0: for the URL. Setting it to "_graphviz" will open a new window if it doesn't wolffd@0: already exist, or reuse it if it does. wolffd@0: If the target string is empty, the default, wolffd@0: then no target attribute is included in the output. wolffd@0: The substrings '\\N' and '\\G' are substituted in the same manner as wolffd@0: for the node label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the node label string. wolffd@0: .PP wolffd@0: \fBtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps wolffd@0: and SVG, effective when nodes have a URL. The tooltip string defaults to be the wolffd@0: same as the label string, but this attribute permits nodes without wolffd@0: labels to still have tooltips thus permitting denser graphs. wolffd@0: The substrings '\\N' and '\\G' are substituted in the same manner as wolffd@0: for the node label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the node label string. wolffd@0: wolffd@0: wolffd@0: .SH "EDGE ATTRIBUTES" wolffd@0: .PP wolffd@0: \fBlabel=\fItext\fR where \fItext\fR may include escaped newlines wolffd@0: \\\|n, \\\|l, or \\\|r for centered, left, or right justified lines. wolffd@0: If the substring '\\T' is found in a label it will be replaced by the tail_node name. wolffd@0: If the substring '\\H' is found in a label it will be replaced by the head_node name. wolffd@0: If the substring '\\E' value is found in a label it will be replaced by: tail_node_name\->head_node_name wolffd@0: If the substring '\\G' is found in a label it will be replaced by the graph name. wolffd@0: or by: tail_node_name\-\-head_node_name for undirected graphs. wolffd@0: .PP wolffd@0: \fBfontsize=\fIn\fR sets the label type size to \fIn\fP points. wolffd@0: .PP wolffd@0: \fBfontname=\fIname\fR sets the label font family name. wolffd@0: .PP wolffd@0: \fBfontcolor=\fIcolorvalue\fR sets the label text color. wolffd@0: .PP wolffd@0: \fBstyle=solid dashed dotted bold invis\fP wolffd@0: .PP wolffd@0: \fBcolor=\fIcolorvalue\fR sets the line color for edges. wolffd@0: .PP wolffd@0: \fBcolor=\fIcolorvaluelist\fR a ':' separated list of \fIcolorvalue\fR creates wolffd@0: parallel edges, one edge for each color. wolffd@0: .PP wolffd@0: \fBdir=forward back both none\fP controls arrow direction. wolffd@0: .PP wolffd@0: \fBtailclip,headclip=false\fP disables endpoint shape clipping. wolffd@0: .PP wolffd@0: \fBhref=\fI"url"\fR sets the url for the node in imagemap, PostScript and SVG wolffd@0: files. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBURL=\fI"url"\fR ("URL" is a synonym for "href".) wolffd@0: .PP wolffd@0: \fBtarget=\fI"target"\fR is a target string for client\(hyside imagemaps wolffd@0: and SVG, effective when edges have a URL. wolffd@0: If the target string is empty, the default, wolffd@0: then no target attribute is included in the output. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps wolffd@0: effective when edges have a URL. The tooltip string defaults to be the wolffd@0: same as the edge label string. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBarrowhead,arrowtail=none, normal, inv, dot, odot, invdot, invodot, wolffd@0: tee, empty, invempty, open, halfopen, diamond, odiamond, box, obox, crow\fP. wolffd@0: .PP wolffd@0: \fBarrowsize\fP (norm_length=10,norm_width=5, wolffd@0: inv_length=6,inv_width=7,dot_radius=2) wolffd@0: .PP wolffd@0: \fBheadlabel,taillabel=string\fP for port labels. wolffd@0: \fBlabelfontcolor\fP,\fBlabelfontname\fP,\fBlabelfontsize\fP wolffd@0: for head and tail labels. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBheadhref=\fI"url"\fR sets the url for the head port in imagemap, PostScript and SVG files. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBheadURL=\fI"url"\fR ("headURL" is a synonym for "headhref".) wolffd@0: .PP wolffd@0: \fBheadtarget=\fI"headtarget"\fR is a target string for client\(hyside imagemaps wolffd@0: and SVG, effective when edge heads have a URL. wolffd@0: The headtarget string is used to determine which window of the browser is used wolffd@0: for the URL. If the headtarget string is empty, the default, wolffd@0: then headtarget defaults to the same value as target for the edge. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBheadtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps wolffd@0: effective when head ports have a URL. The tooltip string defaults to be the wolffd@0: same as the headlabel string. wolffd@0: The substrings '\\T', '\\H', and '\\E' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBtailhref=\fI"url"\fR sets the url for the tail port in imagemap, PostScript and SVG files. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBtailURL=\fI"url"\fR ("tailURL" is a synonym for "tailhref".) wolffd@0: .PP wolffd@0: \fBtailtarget=\fI"tailtarget"\fR is a target string for client\(hyside imagemaps wolffd@0: and SVG, effective when edge tails have a URL. wolffd@0: The tailtarget string is used to determine which window of the browser is used wolffd@0: for the URL. If the tailtarget string is empty, the default, wolffd@0: then tailtarget defaults to the same value as target for the edge. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBtailtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps wolffd@0: effective when tail ports have a URL. The tooltip string defaults to be the wolffd@0: same as the taillabel string. wolffd@0: The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as wolffd@0: for the edge label attribute. wolffd@0: Additionally the substring '\\L' is substituted with the edge label string. wolffd@0: .PP wolffd@0: \fBlabeldistance\fP and \fPport_label_distance\fP set distance; also wolffd@0: \fBlabelangle\fP (in degrees CCW) wolffd@0: .PP wolffd@0: \fBdecorate\fP draws line from edge to label. wolffd@0: .PP wolffd@0: \fBsamehead,sametail\fP aim edges having the same value to the wolffd@0: same port, using the average landing point. wolffd@0: .PP wolffd@0: \fBlayer=\fIid\fR or \fIid:id\fR or "all" sets the edge's active layers. wolffd@0: The empty string means no layers (invisible). wolffd@0: wolffd@0: .PP wolffd@0: \fB(neato\(hyspecific attributes)\fR wolffd@0: .br wolffd@0: \fBw=\fIf\fR sets the weight (spring constant) of an edge wolffd@0: to the given floating point value. The default is 1.0; wolffd@0: greater values make the edge tend more toward its optimal length. wolffd@0: .PP wolffd@0: \fBlen=\fIf\fR sets the optimal length of an edge. wolffd@0: The default is 1.0. wolffd@0: .SH "COMMAND LINE OPTIONS" wolffd@0: \fB\-G\fP sets a default graph attribute. wolffd@0: .br wolffd@0: \fB\-N\fP sets a default node attribute. wolffd@0: .br wolffd@0: \fB\-E\fP sets a default edge attribute. wolffd@0: Example: \fB\-Gsize="7,8" \-Nshape=box \-Efontsize=8\fR wolffd@0: .PP wolffd@0: \fB\-l\fIfile\fR loads custom PostScript library files. wolffd@0: Usually these define custom shapes or styles. wolffd@0: If \fB\-l\fP is given by itself, the standard library is omitted. wolffd@0: .PP wolffd@0: \fB\-T\fIlang\fR sets the output language as described above. wolffd@0: .PP wolffd@0: \fB\-O\fP automatically generate output filenames based on the input filename and the -T format. wolffd@0: .PP wolffd@0: \fB\-v\fP (verbose) prints various information useful for debugging. wolffd@0: .PP wolffd@0: \fB\-V\fP (version) prints version information and exits. wolffd@0: .PP wolffd@0: \fB\-?\fP prints the usage and exits. wolffd@0: .SH "EXAMPLES" wolffd@0: .nf wolffd@0: digraph test123 { wolffd@0: pack=8 wolffd@0: subgraph cluster0 { wolffd@0: packmode=array wolffd@0: x y x0 y0 x1 wolffd@0: subgraph cluster1 { wolffd@0: m n wolffd@0: } wolffd@0: } wolffd@0: b [shape=box]; wolffd@0: c [label="hello\\\nworld",color=blue,fontsize=24, wolffd@0: fontname="Palatino\-Italic",fontcolor=red,style=filled]; wolffd@0: a \-> z wolffd@0: x \-> z wolffd@0: a \-> b \-> c; wolffd@0: a \-> {x y}; wolffd@0: edge [style=dashed,color=red]; wolffd@0: b \-> x; wolffd@0: } wolffd@0: .fi wolffd@0: .SH AUTHORS wolffd@0: Emden R. Gansner wolffd@0: .SH "SEE ALSO" wolffd@0: This man page contains only a small amount of the information related wolffd@0: to the Graphviz layout programs. The most complete information can be wolffd@0: found at http://www.graphviz.org/Documentation.php, especially in the wolffd@0: on\(hyline reference pages. Most of these documents are also available in the wolffd@0: \fIdoc\fP and \fIdoc/info\fP subtrees in the source and binary distributions. wolffd@0: .PP wolffd@0: dot(1)