Mercurial > hg > camir-aes2014
comparison toolboxes/graph_visualisation/share/man/man1/neato.1 @ 0:e9a9cd732c1e tip
first hg version after svn
author | wolffd |
---|---|
date | Tue, 10 Feb 2015 15:05:51 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:e9a9cd732c1e |
---|---|
1 .TH DOT 1 "23 August 2004" \*(eX | |
2 .SH NAME | |
3 dot \- filter for drawing directed graphs | |
4 .br | |
5 neato \- filter for drawing undirected graphs | |
6 .br | |
7 twopi \- filter for radial layouts of graphs | |
8 .br | |
9 circo \- filter for circular layout of graphs | |
10 .br | |
11 fdp \- filter for drawing undirected graphs | |
12 .br | |
13 sfdp \- filter for drawing large undirected graphs | |
14 .SH SYNOPSIS | |
15 \fBdot\fR | |
16 [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] | |
17 [\fB\-T\fIlang\fR] | |
18 [\fB\-l\fIlibfile\fR] | |
19 [\fB\-o\fIoutfile\fR] | |
20 [\fB\-K\fIlayout\fR] | |
21 [\fB\-O\fR] | |
22 [\fB\-P\fR] | |
23 [\fB\-v\fR] | |
24 [\fB\-V\fR] | |
25 [files] | |
26 .br | |
27 \fBneato\fR | |
28 [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] | |
29 [\fB\-T\fIlang\fR] | |
30 [\fB\-l\fIlibfile\fR] | |
31 [\fB\-n\fR[\fB1\fR|\fB2\fR]] | |
32 [\fB\-o\fIoutfile\fR] | |
33 [\fB\-K\fIlayout\fR] | |
34 [\fB\-O\fR] | |
35 [\fB\-P\fR] | |
36 [\fB\-v\fR] | |
37 [\fB\-V\fR] | |
38 [files] | |
39 .br | |
40 \fBtwopi\fR | |
41 [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] | |
42 [\fB\-T\fIlang\fR] | |
43 [\fB\-l\fIlibfile\fR] | |
44 [\fB\-o\fIoutfile\fR] | |
45 [\fB\-K\fIlayout\fR] | |
46 [\fB\-O\fR] | |
47 [\fB\-P\fR] | |
48 [\fB\-v\fR] | |
49 [\fB\-V\fR] | |
50 [files] | |
51 .br | |
52 \fBcirco\fR | |
53 [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] | |
54 [\fB\-T\fIlang\fR] | |
55 [\fB\-l\fIlibfile\fR] | |
56 [\fB\-o\fIoutfile\fR] | |
57 [\fB\-K\fIlayout\fR] | |
58 [\fB\-O\fR] | |
59 [\fB\-P\fR] | |
60 [\fB\-v\fR] | |
61 [\fB\-V\fR] | |
62 [files] | |
63 .br | |
64 \fBfdp\fR | |
65 [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] | |
66 [\fB\-T\fIlang\fR] | |
67 [\fB\-l\fIlibfile\fR] | |
68 [\fB\-o\fIoutfile\fR] | |
69 [\fB\-K\fIlayout\fR] | |
70 [\fB\-O\fR] | |
71 [\fB\-P\fR] | |
72 [\fB\-v\fR] | |
73 [\fB\-V\fR] | |
74 [files] | |
75 .br | |
76 \fBsfdp\fR | |
77 [\fB\-\fR(\fBG\fR|\fBN\fR|\fBE\fR)\fIname=value\fR] | |
78 [\fB\-T\fIlang\fR] | |
79 [\fB\-l\fIlibfile\fR] | |
80 [\fB\-o\fIoutfile\fR] | |
81 [\fB\-K\fIlayout\fR] | |
82 [\fB\-O\fR] | |
83 [\fB\-P\fR] | |
84 [\fB\-v\fR] | |
85 [\fB\-V\fR] | |
86 [files] | |
87 .SH DESCRIPTION | |
88 .I dot | |
89 draws directed graphs. It works well on DAGs and other graphs | |
90 that can be drawn as hierarchies. | |
91 It reads attributed graph files and writes drawings. | |
92 By default, the output format | |
93 .I dot | |
94 is the input file with layout coordinates appended. | |
95 .PP | |
96 .I neato | |
97 draws undirected graphs using ``spring'' models (see Kamada and Kawai, | |
98 Information Processing Letters 31:1, April 1989). Input files must be | |
99 formatted in the | |
100 .I dot | |
101 attributed graph language. | |
102 By default, the output of | |
103 .I neato | |
104 is the input graph with layout coordinates appended. | |
105 .PP | |
106 .I twopi | |
107 draws graphs using a radial layout (see G. Wills, | |
108 Symposium on Graph Drawing GD'97, September, 1997). | |
109 Basically, one node is chosen as the center and put at the origin. | |
110 The remaining nodes are placed on a sequence of concentric circles | |
111 centered about the origin, each a fixed radial distance from the | |
112 previous circle. | |
113 All nodes distance 1 from the center are placed on the first circle; | |
114 all nodes distance 1 from a node on the first circle are placed on | |
115 the second circle; and so forth. | |
116 .PP | |
117 .I circo | |
118 draws graphs using a circular layout (see | |
119 Six and Tollis, GD '99 and ALENEX '99, and | |
120 Kaufmann and Wiese, GD '02.) | |
121 The tool identifies biconnected components and draws the nodes of | |
122 the component on a circle. The block\(hycutpoint tree | |
123 is then laid out using a recursive radial algorithm. Edge | |
124 crossings within a circle are minimized by placing as many edges on | |
125 the circle's perimeter as possible. | |
126 In particular, if the component is outerplanar, the component will | |
127 have a planar layout. | |
128 .PP | |
129 If a node belongs to multiple non\(hytrivial biconnected components, | |
130 the layout puts the node in one of them. By default, this is the first | |
131 non\(hytrivial component found in the search from the root component. | |
132 .PP | |
133 .I fdp | |
134 draws undirected graphs using a ``spring'' model. It relies on a | |
135 force\(hydirected approach in the spirit of Fruchterman and Reingold | |
136 (cf. Software\(hyPractice & Experience 21(11), 1991, pp. 1129\(hy1164). | |
137 .PP | |
138 .I sfdp | |
139 also draws undirected graphs using the ``spring'' model described | |
140 above, but it uses a multi-scale approach to produce layouts | |
141 of large graphs in a reasonably short time. | |
142 .SH OUTPUT FORMATS | |
143 Dot uses an extensible plugin mechanism for its output renderers, | |
144 so to see what output formats your installation of dot supports | |
145 you can use ``dot \-Txxx'' (where xxx is an unlikely format) | |
146 and check the warning message. | |
147 Also, The plugin mechanism supports multiple implementations | |
148 of the output formats. | |
149 To see what variants are available, use, for example: ``dot \-Tpng:'' | |
150 and to force a particular variant, use, for example: ``dot \-Tpng:gd'' | |
151 .P | |
152 Traditionally, dot supports the following: | |
153 \fB\-Tps\fP (PostScript), | |
154 \fB\-Tsvg\fP \fB\-Tsvgz\fP (Structured Vector Graphics), | |
155 \fB\-Tfig\fP (XFIG graphics), | |
156 \fB\-Tmif\fP (FrameMaker graphics), | |
157 \fB\-Thpgl\fP (HP pen plotters), and \fB\-Tpcl\fP (Laserjet printers), | |
158 \fB\-Tpng\fP \fB\-Tgif\fP (bitmap graphics), | |
159 \fB\-Tdia\fP (GTK+ based diagrams), | |
160 \fB\-Timap\fP (imagemap files for httpd servers for each node or edge | |
161 that has a non\(hynull "href" attribute.), | |
162 \fB\-Tcmapx\fP (client\(hyside imagemap for use in html and xhtml). | |
163 Additional less common or more special\(hypurpose output formats | |
164 can be found at http://www.graphviz.org/cvs/doc/info/output.html.) | |
165 .P | |
166 Alternative plugins providing support for a given output format | |
167 can be found from the error message resulting from appending a ':' to the format. e.g. \fB-Tpng:\fP | |
168 The first plugin listed is always the default. | |
169 .P | |
170 The \fB\-P\fP switch can be used to produce a graph of all output variants supported by plugins in the local installation of graphviz. | |
171 .SH GRAPH FILE LANGUAGE | |
172 Here is a synopsis of the graph file language, traditionally using the extension \fB.dot\fR, for graphs: | |
173 .PP | |
174 [\fBstrict\fR] (\fBgraph\fR|\fBdigraph\fR) \fIname\fP { \fIstatement\(hylist\fP }\fR | |
175 .br | |
176 Is the top level graph. If the graph is \fBstrict\fR then multiple edges are | |
177 not allowed between the same pairs of nodes. | |
178 If it is a directed graph, indicated by \fBdigraph\fR, | |
179 then the \fIedgeop\fR must be "\->". If it is an undirected \fBgraph\fR | |
180 then the \fIedgeop\fR must be "\-\-". | |
181 Statements may be: | |
182 .PP | |
183 \fIname\fB=\fIval\fB;\fR | |
184 .br | |
185 \fBnode [\fIname\fB=\fIval\fB];\fR | |
186 .br | |
187 \fBedge [\fIname\fB=\fIval\fB];\fR | |
188 .br | |
189 Set default graph, node, or edge attribute \fIname\fP to \fIval\fP. | |
190 Any subgraph, node, or edge appearing after this inherits the new | |
191 default attributes. | |
192 .PP | |
193 \fBn0 [\fIname0=val0,name1=val1,...\fB];\fR | |
194 Creates node \fBn0\fP (if it does not already exist) | |
195 and sets its attributes according to the optional list. | |
196 .PP | |
197 \fBn0 \fIedgeop\fR n1 \fIedgeop\fR \fI...\fB \fIedgeop\fR nn [\fIname0=val0,name1=val1,...\fB];\fR | |
198 .br | |
199 Creates edges between nodes \fBn0\fP, \fBn1\fP, ..., \fBnn\fP and sets | |
200 their attributes according to the optional list. | |
201 Creates nodes as necessary. | |
202 .PP | |
203 [\fBsubgraph \fIname\fB] { \fIstatement\(hylist \fB}\fR | |
204 .br | |
205 Creates a subgraph. Subgraphs may be used in place | |
206 of \fBn0\fP, ..., \fBnn\fP in the above statements to create edges. | |
207 [\fBsubgraph \fIname\fR] is optional; | |
208 if missing, the subgraph is assigned an internal name. | |
209 .PP | |
210 Comments may be /*C\(hylike*/ or //C++\(hylike. | |
211 | |
212 .PP | |
213 Attribute names and values are ordinary (C\(hystyle) strings. | |
214 The following sections describe attributes that control graph layout. | |
215 | |
216 .SH "GRAPH ATTRIBUTES" | |
217 .PP | |
218 \fBsize="\fIx,y\fP"\fR sets bounding box of drawing in inches. | |
219 .PP | |
220 \fBpage="\fIx,y\fP"\fR sets the PostScript pagination unit. | |
221 .PP | |
222 \fBratio=\fIf\fR sets the aspect ratio to \fIf\fP which may be | |
223 a floating point number, or one of the keywords \fBfill\fP, | |
224 \fBcompress\fP, or \fBauto\fP. | |
225 .PP | |
226 \fBlayout=\fIengine\fR indicates the preferred layout engine ("dot", "neato", fdp" etc) overriding the default from the basename of the command or the -K commandline option. | |
227 .PP | |
228 \fBmargin=\fIf\fR sets the page margin (included in the page size). | |
229 .PP | |
230 \fBnodesep=\fIf\fR sets the minimum separation between nodes. | |
231 .PP | |
232 \fBranksep=\fIf\fR sets the minimum separation between ranks. | |
233 .PP | |
234 \fBordering=out\fR constrains order of out\(hyedges in a subgraph | |
235 according to their file sequence. | |
236 .PP | |
237 \fBrankdir=LR|RL|BT\fR requests a left\(hyto\(hyright, right\(hyto\(hyleft, or bottom\(hyto\(hytop, drawing. | |
238 .PP | |
239 \fBpagedir=\fR[TBLR][TBLR] sets the major and minor order of pagination. | |
240 .PP | |
241 \fBrank=same\fR (or \fBmin\fP or \fBmax\fP) in a subgraph | |
242 constrains the rank assignment of its nodes. If a subgraph's | |
243 name has the prefix \fBcluster\fP, its nodes are drawn in | |
244 a distinct rectangle of the layout. Clusters may be nested. | |
245 .PP | |
246 \fBrotate=90\fR sets landscape mode. | |
247 (\fBorientation=land\fR is backward compatible but obsolete.) | |
248 .PP | |
249 \fBcenter=\fIn\fR a non\(hyzero value centers the drawing on the page. | |
250 .PP | |
251 \fBnslimit=\fIf\fR or \fBmclimit=\fIf\fR adjusts the bound on the | |
252 number of network simplex or mincross iterations by the given ratio. | |
253 For example, \fBmclimit=2.0\fP runs twice as long. | |
254 .PP | |
255 \fBlayers="\fIid:id:id:id\fR" is a sequence of layer identifiers for | |
256 overlay diagrams. The PostScript array variable \fIlayercolorseq\fR | |
257 sets the assignment of colors to layers. The least index is 1 and | |
258 each element must be a 3\(hyelement array to be interpreted as a color coordinate. | |
259 .PP | |
260 \fBcolor=\fIcolorvalue\fR sets foreground color (\fBbgcolor\fP for background). | |
261 .PP | |
262 \fBhref=\fI"url"\fR the default url for image map files; in PostScript files, | |
263 the base URL for all relative URLs, as recognized by Acrobat Distiller | |
264 3.0 and up. | |
265 .PP | |
266 \fBURL=\fI"url"\fR ("URL" is a synonym for "href".) | |
267 .PP | |
268 \fBstylesheet=\fI"file.css"\fR includes a reference to a stylesheet | |
269 in \-Tsvg and \-Tsvgz outputs. Ignored by other formats. | |
270 .PP | |
271 \fBsplines\fR. If set to \fItrue\fR, edges are | |
272 drawn as splines. | |
273 If set to \fIpolyline\fR, edges are | |
274 drawn as polylines. | |
275 If set to \fIortho\fR, edges are | |
276 drawn as orthogonal polylines. | |
277 In all of these cases, the nodes may not overlap. | |
278 If \fBsplines=\fIfalse\fR or \fBsplines=\fIline\fR, edges are | |
279 drawn as line segments. | |
280 The default is \fItrue\fR for dot, and \fIfalse\fR for all other layouts. | |
281 | |
282 .PP | |
283 \fB(neato\(hyspecific attributes)\fR | |
284 .br | |
285 \fBstart=\fIval\fR. Requests random initial placement and seeds | |
286 the random number generator. If \fIval\fP is not an integer, | |
287 the process ID or current time is used as the seed. | |
288 .PP | |
289 \fBepsilon=\fIn\fR. Sets the cutoff for the solver. | |
290 The default is 0.1. | |
291 | |
292 .PP | |
293 \fB(twopi\(hyspecific attributes)\fR | |
294 .br | |
295 \fBroot=\fIctr\fR. This specifies the node to be used as the center of | |
296 the layout. If not specified, \fItwopi\fP will randomly pick one of the | |
297 nodes that are furthest from a leaf node, where a leaf node is a node | |
298 of degree 1. If no leaf nodes exists, an arbitrary node is picked as center. | |
299 .PP | |
300 \fBranksep=\fIval\fR. Specifies the radial distance in inches between | |
301 the sequence of rings. The default is 0.75. | |
302 .PP | |
303 \fBoverlap=\fImode\fR. This specifies what \fItwopi\fP should do if | |
304 any nodes overlap. If mode is \fI"false"\fP, the program uses Voronoi | |
305 diagrams to adjust the nodes to eliminate overlaps. If mode is \fI"scale"\fP, | |
306 the layout is uniformly scaled up, preserving node sizes, until nodes no | |
307 longer overlap. The latter technique removes overlaps while preserving | |
308 symmetry and structure, while the former removes overlaps more compactly | |
309 but destroys symmetries. | |
310 If mode is \fI"true"\fP (the default), no repositioning is done. | |
311 | |
312 .PP | |
313 \fB(circo\(hyspecific attributes)\fR | |
314 .br | |
315 \fBroot=\fInodename\fR. Specifies the name of a node occurring in the | |
316 root block. If the graph is disconnected, the \fBroot\fP node attribute | |
317 can be used to specify additional root blocks. | |
318 .PP | |
319 \fBmindist=\fIvalue\fR. Sets the minimum separation between all nodes. If not | |
320 specified then \fIcirco\fP uses a default value of 1.0. | |
321 | |
322 .PP | |
323 \fB(fdp\(hyspecific attributes)\fR | |
324 .br | |
325 \fBK=\fIval\fR. Sets the default ideal node separation | |
326 in the layout. | |
327 .PP | |
328 \fBmaxiter=\fIval\fR. Sets the maximum number of iterations used to | |
329 layout the graph. | |
330 .PP | |
331 \fBstart=\fIval\fR. Adjusts the random initial placement of nodes | |
332 with no specified position. If \fIval\fP is is an integer, | |
333 it is used as the seed for the random number generator. | |
334 If \fIval\fP is not an integer, a random system\(hygenerated integer, | |
335 such as the process ID or current time, is used as the seed. | |
336 .PP | |
337 | |
338 .SH "NODE ATTRIBUTES" | |
339 .PP | |
340 \fBheight=\fId\fR or \fBwidth=\fId\fR sets minimum height or width. | |
341 Adding \fBfixedsize=true\fP forces these to be the actual size | |
342 (text labels are ignored). | |
343 .PP | |
344 \fBshape=record polygon epsf \fIbuiltin_polygon\fR | |
345 .br | |
346 \fIbuiltin_polygon\fR is one of: \fBplaintext ellipse oval circle egg | |
347 triangle box diamond trapezium parallelogram house hexagon octagon | |
348 note tab box3d component.\fR | |
349 (Polygons are defined or modified by the following node attributes: | |
350 \fBregular\fR, \fBperipheries\fR, \fBsides\fR, \fBorientation\fR, | |
351 \fBdistortion\fR and \fBskew\fR.) \fBepsf\fR uses the node's | |
352 \fBshapefile\fR attribute as the path name of an external | |
353 EPSF file to be automatically loaded for the node shape. | |
354 .PP | |
355 \fBlabel=\fItext\fR where \fItext\fP may include escaped newlines | |
356 \\\|n, \\\|l, or \\\|r for center, left, and right justified lines. | |
357 The string '\\N' value will be replaced by the node name. | |
358 The string '\\G' value will be replaced by the graph name. | |
359 Record labels may contain recursive box lists delimited by { | }. | |
360 Port identifiers in labels are set off by angle brackets < >. | |
361 In the graph file, use colon (such as, \fBnode0:port28\fR). | |
362 .PP | |
363 \fBfontsize=\fIn\fR sets the label type size to \fIn\fP points. | |
364 .PP | |
365 \fBfontname=\fIname\fR sets the label font family name. | |
366 .PP | |
367 \fBcolor=\fIcolorvalue\fR sets the outline color, and the default fill color | |
368 if style=filled and \fBfillcolor\fR is not specified. | |
369 .PP | |
370 \fBfillcolor=\fIcolorvalue\fR sets the fill color | |
371 when style=filled. If not specified, the fillcolor when style=filled defaults | |
372 to be the same as the outline color. | |
373 .PP | |
374 \fBfontcolor=\fIcolorvalue\fR sets the label text color. | |
375 .PP | |
376 A \fIcolorvalue\fP may be "\fIh,s,v\fB"\fR (hue, saturation, brightness) | |
377 floating point numbers between 0 and 1, or an X11 color name such as | |
378 \fBwhite black red green blue yellow magenta cyan\fR or \fBburlywood\fR, | |
379 or a "\fI#rrggbb" (red, green, blue, 2 hex characters each) value. | |
380 .PP | |
381 \fBstyle=filled solid dashed dotted bold invis\fP or any Postscript code. | |
382 .PP | |
383 \fBlayer=\fIid\fR or \fIid:id\fR or "all" sets the node's active layers. | |
384 The empty string means no layers (invisible). | |
385 .PP | |
386 The following attributes apply only to polygon shape nodes: | |
387 .PP | |
388 \fBregular=\fIn\fR if \fIn\fR is non\(hyzero then the polygon is made | |
389 regular, i.e. symmetric about the x and y axis, otherwise the | |
390 polygon takes on the aspect ratio of the label. | |
391 \fIbuiltin_polygons\fR that are not already regular are made regular | |
392 by this attribute. | |
393 \fIbuiltin_polygons\fR that are already regular are not affected (i.e. | |
394 they cannot be made asymmetric). | |
395 .PP | |
396 \fBperipheries=\fIn\fR sets the number of periphery lines drawn around | |
397 the polygon. This value supersedes the number of periphery lines | |
398 of \fIbuiltin_polygons\fR. | |
399 .PP | |
400 \fBsides=\fIn\fR sets the number of sides to the polygon. \fIn\fR<3 | |
401 results in an ellipse. | |
402 This attribute is ignored by \fIbuiltin_polygons\fR. | |
403 .PP | |
404 \fBorientation=\fIf\fR sets the orientation of the first apex of the | |
405 polygon counterclockwise from the vertical, in degrees. | |
406 \fIf\fR may be a floating point number. | |
407 The orientation of labels is not affected by this attribute. | |
408 This attribute is added to the initial orientation of \fIbuiltin_polygons.\fR | |
409 .PP | |
410 \fBdistortion=\fIf\fR sets the amount of broadening of the top and | |
411 narrowing of the bottom of the polygon (relative to its orientation). | |
412 Floating point values between \-1 and +1 are suggested. | |
413 This attribute is ignored by \fIbuiltin_polygons\fR. | |
414 .PP | |
415 \fBskew=\fIf\fR sets the amount of right\(hydisplacement of the top and | |
416 left\(hydisplacement of the bottom of the polygon (relative to its | |
417 orientation). | |
418 Floating point values between \-1 and +1 are suggested. | |
419 This attribute is ignored by \fIbuiltin_polygons\fR. | |
420 .PP | |
421 \fBhref=\fI"url"\fR sets the url for the node in imagemap, PostScript and SVG | |
422 files. | |
423 The substrings '\\N' and '\\G' are substituted in the same manner as | |
424 for the node label attribute. | |
425 Additionally the substring '\\L' is substituted with the node label string. | |
426 .PP | |
427 \fBURL=\fI"url"\fR ("URL" is a synonym for "href".) | |
428 .PP | |
429 \fBtarget=\fI"target"\fR is a target string for client\(hyside imagemaps | |
430 and SVG, effective when nodes have a URL. | |
431 The target string is used to determine which window of the browser is used | |
432 for the URL. Setting it to "_graphviz" will open a new window if it doesn't | |
433 already exist, or reuse it if it does. | |
434 If the target string is empty, the default, | |
435 then no target attribute is included in the output. | |
436 The substrings '\\N' and '\\G' are substituted in the same manner as | |
437 for the node label attribute. | |
438 Additionally the substring '\\L' is substituted with the node label string. | |
439 .PP | |
440 \fBtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps | |
441 and SVG, effective when nodes have a URL. The tooltip string defaults to be the | |
442 same as the label string, but this attribute permits nodes without | |
443 labels to still have tooltips thus permitting denser graphs. | |
444 The substrings '\\N' and '\\G' are substituted in the same manner as | |
445 for the node label attribute. | |
446 Additionally the substring '\\L' is substituted with the node label string. | |
447 | |
448 .PP | |
449 \fB(circo\(hyspecific attributes)\fR | |
450 .br | |
451 \fBroot=\fItrue/false\fR. This specifies that the block containing the given | |
452 node be treated as the root of the spanning tree in the layout. | |
453 | |
454 .PP | |
455 \fB(fdp\(hyspecific attributes)\fR | |
456 .br | |
457 \fBpin=\fIval\fR. If \fIval\fR is "true", the node will remain at | |
458 its initial position. | |
459 | |
460 .SH "EDGE ATTRIBUTES" | |
461 \fBminlen=\fIn\fR where \fIn\fP is an integer factor that applies | |
462 to the edge length (ranks for normal edges, or minimum node separation | |
463 for flat edges). | |
464 .PP | |
465 \fBweight=\fIn\fR where \fIn\fP is the integer cost of the edge. | |
466 Values greater than 1 tend to shorten the edge. Weight 0 flat | |
467 edges are ignored for ordering nodes. | |
468 .PP | |
469 \fBlabel=\fItext\fR where \fItext\fR may include escaped newlines | |
470 \\\|n, \\\|l, or \\\|r for centered, left, or right justified lines. | |
471 If the substring '\\T' is found in a label it will be replaced by the tail_node name. | |
472 If the substring '\\H' is found in a label it will be replaced by the head_node name. | |
473 If the substring '\\E' value is found in a label it will be replaced by: tail_node_name\->head_node_name | |
474 If the substring '\\G' is found in a label it will be replaced by the graph name. | |
475 or by: tail_node_name\-\-head_node_name for undirected graphs. | |
476 .PP | |
477 \fBfontsize=\fIn\fR sets the label type size to \fIn\fP points. | |
478 .PP | |
479 \fBfontname=\fIname\fR sets the label font family name. | |
480 .PP | |
481 \fBfontcolor=\fIcolorvalue\fR sets the label text color. | |
482 .PP | |
483 \fBstyle=solid dashed dotted bold invis\fP | |
484 .PP | |
485 \fBcolor=\fIcolorvalue\fR sets the line color for edges. | |
486 .PP | |
487 \fBcolor=\fIcolorvaluelist\fR a ':' separated list of \fIcolorvalue\fR creates | |
488 parallel edges, one edge for each color. | |
489 .PP | |
490 \fBdir=forward back both none\fP controls arrow direction. | |
491 .PP | |
492 \fBtailclip,headclip=false\fP disables endpoint shape clipping. | |
493 .PP | |
494 \fBhref=\fI"url"\fR sets the url for the node in imagemap, PostScript and SVG | |
495 files. | |
496 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
497 for the edge label attribute. | |
498 Additionally the substring '\\L' is substituted with the edge label string. | |
499 .PP | |
500 \fBURL=\fI"url"\fR ("URL" is a synonym for "href".) | |
501 .PP | |
502 \fBtarget=\fI"target"\fR is a target string for client\(hyside imagemaps | |
503 and SVG, effective when edges have a URL. | |
504 If the target string is empty, the default, | |
505 then no target attribute is included in the output. | |
506 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
507 for the edge label attribute. | |
508 Additionally the substring '\\L' is substituted with the edge label string. | |
509 .PP | |
510 \fBtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps | |
511 effective when edges have a URL. The tooltip string defaults to be the | |
512 same as the edge label string. | |
513 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
514 for the edge label attribute. | |
515 Additionally the substring '\\L' is substituted with the edge label string. | |
516 .PP | |
517 \fBarrowhead,arrowtail=none, normal, inv, dot, odot, invdot, invodot, | |
518 tee, empty, invempty, open, halfopen, diamond, odiamond, box, obox, crow\fP. | |
519 .PP | |
520 \fBarrowsize\fP (norm_length=10,norm_width=5, | |
521 inv_length=6,inv_width=7,dot_radius=2) | |
522 .PP | |
523 \fBheadlabel,taillabel=string\fP for port labels. | |
524 \fBlabelfontcolor\fP,\fBlabelfontname\fP,\fBlabelfontsize\fP | |
525 for head and tail labels. | |
526 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
527 for the edge label attribute. | |
528 Additionally the substring '\\L' is substituted with the edge label string. | |
529 .PP | |
530 \fBheadhref=\fI"url"\fR sets the url for the head port in imagemap, PostScript and SVG files. | |
531 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
532 for the edge label attribute. | |
533 Additionally the substring '\\L' is substituted with the edge label string. | |
534 .PP | |
535 \fBheadURL=\fI"url"\fR ("headURL" is a synonym for "headhref".) | |
536 .PP | |
537 \fBheadtarget=\fI"headtarget"\fR is a target string for client\(hyside imagemaps | |
538 and SVG, effective when edge heads have a URL. | |
539 The headtarget string is used to determine which window of the browser is used | |
540 for the URL. If the headtarget string is empty, the default, | |
541 then headtarget defaults to the same value as target for the edge. | |
542 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
543 for the edge label attribute. | |
544 Additionally the substring '\\L' is substituted with the edge label string. | |
545 .PP | |
546 \fBheadtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps | |
547 effective when head ports have a URL. The tooltip string defaults to be the | |
548 same as the headlabel string. | |
549 The substrings '\\T', '\\H', and '\\E' are substituted in the same manner as | |
550 for the edge label attribute. | |
551 Additionally the substring '\\L' is substituted with the edge label string. | |
552 .PP | |
553 \fBtailhref=\fI"url"\fR sets the url for the tail port in imagemap, PostScript and SVG files. | |
554 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
555 for the edge label attribute. | |
556 Additionally the substring '\\L' is substituted with the edge label string. | |
557 .PP | |
558 \fBtailURL=\fI"url"\fR ("tailURL" is a synonym for "tailhref".) | |
559 .PP | |
560 \fBtailtarget=\fI"tailtarget"\fR is a target string for client\(hyside imagemaps | |
561 and SVG, effective when edge tails have a URL. | |
562 The tailtarget string is used to determine which window of the browser is used | |
563 for the URL. If the tailtarget string is empty, the default, | |
564 then tailtarget defaults to the same value as target for the edge. | |
565 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
566 for the edge label attribute. | |
567 Additionally the substring '\\L' is substituted with the edge label string. | |
568 .PP | |
569 \fBtailtooltip=\fI"tooltip"\fR is a tooltip string for client\(hyside imagemaps | |
570 effective when tail ports have a URL. The tooltip string defaults to be the | |
571 same as the taillabel string. | |
572 The substrings '\\T', '\\H', '\\E' and '\\G' are substituted in the same manner as | |
573 for the edge label attribute. | |
574 Additionally the substring '\\L' is substituted with the edge label string. | |
575 .PP | |
576 \fBlabeldistance\fP and \fPport_label_distance\fP set distance; also | |
577 \fBlabelangle\fP (in degrees CCW) | |
578 .PP | |
579 \fBdecorate\fP draws line from edge to label. | |
580 .PP | |
581 \fBsamehead,sametail\fP aim edges having the same value to the | |
582 same port, using the average landing point. | |
583 .PP | |
584 \fBconstraint=false\fP causes an edge to be ignored for rank assignment. | |
585 .PP | |
586 \fBlayer=\fIid\fR or \fIid:id\fR or "all" sets the edge's active layers. | |
587 The empty string means no layers (invisible). | |
588 | |
589 .PP | |
590 \fB(neato\(hyspecific attributes)\fR | |
591 .br | |
592 \fBw=\fIf\fR sets the weight (spring constant) of an edge | |
593 to the given floating point value. The default is 1.0; | |
594 greater values make the edge tend more toward its optimal length. | |
595 .PP | |
596 \fBlen=\fIf\fR sets the optimal length of an edge. | |
597 The default is 1.0. | |
598 .PP | |
599 \fB(fdp\(hyspecific attributes)\fR | |
600 .br | |
601 \fBweight=\fIf\fR sets the weight of an edge | |
602 to the given floating point value. The default is 1.0; | |
603 greater values make the edge tend more toward its optimal length. | |
604 .SH "COMMAND LINE OPTIONS" | |
605 \fB\-G\fP sets a default graph attribute. | |
606 .br | |
607 \fB\-N\fP sets a default node attribute. | |
608 .br | |
609 \fB\-E\fP sets a default edge attribute. | |
610 Example: \fB\-Gsize="7,8" \-Nshape=box \-Efontsize=8\fR | |
611 .PP | |
612 \fB\-l\fIfile\fR loads custom PostScript library files. | |
613 Usually these define custom shapes or styles. | |
614 If \fB\-l\fP is given by itself, the standard library is omitted. | |
615 .PP | |
616 \fB\-T\fIlang\fR sets the output language as described above. | |
617 | |
618 .PP | |
619 \fB\-n\fR[\fB1\fR|\fB2\fR] (no\(hyop) | |
620 If set, neato assumes nodes have already been positioned and all | |
621 nodes have a pos attribute giving the positions. | |
622 It then performs an optional adjustment to remove node\(hynode overlap, | |
623 depending on the value of the overlap attribute, | |
624 computes the edge layouts, depending on the value of the \fBsplines\fR attribute, | |
625 and emits the graph in the appropriate format. | |
626 If num is supplied, the following actions occur: | |
627 .nf | |
628 num = 1 | |
629 .fi | |
630 Equivalent to \-n. | |
631 .nf | |
632 num > 1 | |
633 .fi | |
634 Use node positions as specified, | |
635 with no adjustment to remove node\(hynode overlaps, | |
636 and use any edge layouts already specified by the pos attribute. | |
637 neato computes an edge layout for any edge that does not have a pos attribute. | |
638 As usual, edge layout is guided by the \fBsplines\fR attribute. | |
639 .PP | |
640 \fB\-K\fIlayout\fR override the default layout engine implied by the command name. | |
641 .PP | |
642 \fB\-O\fP automatically generate output filenames based on the input filename and the -T format. | |
643 .PP | |
644 \fB\-P\fP generate a graph of the currently available plugins. | |
645 .PP | |
646 \fB\-v\fP (verbose) prints various information useful for debugging. | |
647 .PP | |
648 \fB\-V\fP (version) prints version information and exits. | |
649 .PP | |
650 \fB\-?\fP prints the usage and exits. | |
651 .SH "EXAMPLES" | |
652 .nf | |
653 digraph test123 { | |
654 a \-> b \-> c; | |
655 a \-> {x y}; | |
656 b [shape=box]; | |
657 c [label="hello\\\|nworld",color=blue,fontsize=24, | |
658 fontname="Palatino\-Italic",fontcolor=red,style=filled]; | |
659 a \-> z [label="hi", weight=100]; | |
660 x \-> z [label="multi\-line\\\|nlabel"]; | |
661 edge [style=dashed,color=red]; | |
662 b \-> x; | |
663 {rank=same; b x} | |
664 } | |
665 .fi | |
666 .PP | |
667 .nf | |
668 graph test123 { | |
669 a \-\- b \-\- c; | |
670 a \-\- {x y}; | |
671 x \-\- c [w=10.0]; | |
672 x \-\- y [w=5.0,len=3]; | |
673 } | |
674 .fi | |
675 .SH "CAVEATS" | |
676 Edge splines can overlap unintentionally. | |
677 .PP | |
678 Flat edge labels are slightly broken. | |
679 Intercluster edge labels are totally broken. | |
680 .PP | |
681 Because unconstrained optimization is employed, node boxes can | |
682 possibly overlap or touch unrelated edges. All existing | |
683 spring embedders seem to have this limitation. | |
684 .PP | |
685 Apparently reasonable attempts to pin nodes or adjust edge lengths | |
686 and weights can cause instability. | |
687 .SH AUTHORS | |
688 Stephen C. North <north@research.att.com> | |
689 .br | |
690 Emden R. Gansner <erg@research.att.com> | |
691 .br | |
692 John C. Ellson <ellson@research.att.com> | |
693 .PP | |
694 The bitmap driver (PNG, GIF etc) is by Thomas Boutell, <http://www.boutell.com/gd> | |
695 .PP | |
696 The Truetype font renderer is from | |
697 the Freetype Project (David Turner, Robert Wilhelm, and Werner Lemberg) | |
698 (who can be contacted at freetype\-devel@lists.lrz\-muenchen.de). | |
699 .SH "SEE ALSO" | |
700 This man page contains only a small amount of the information related | |
701 to the Graphviz layout programs. The most complete information can be | |
702 found at http://www.graphviz.org/Documentation.php, especially in the | |
703 on\(hyline reference pages. Most of these documents are also available in the | |
704 \fIdoc\fP and \fIdoc/info\fP subtrees in the source and binary distributions. | |
705 .PP | |
706 dotty(1) | |
707 .br | |
708 tcldot(n) | |
709 .br | |
710 xcolors(1) | |
711 .br | |
712 libgraph(3) | |
713 .PP | |
714 E. R. Gansner, S. C. North, K. P. Vo, "DAG \(hy A Program to Draw Directed Graphs", Software \(hy Practice and Experience 17(1), 1988, pp. 1047\(hy1062. | |
715 .br | |
716 E. R. Gansner, E. Koutsofios, S. C. North, K. P. Vo, "A Technique for Drawing Directed Graphs," IEEE Trans. on Soft. Eng. 19(3), 1993, pp. 214\(hy230. | |
717 .br | |
718 S. North and E. Koutsofios, "Applications of graph visualization", | |
719 Graphics Interface 94, pp. 234\(hy245. | |
720 .br | |
721 E. Koutsofios and S. C. North, "Drawing Graphs with dot," | |
722 Available on research.att.com in dist/drawdag/dotguide.ps.Z. | |
723 .br | |
724 S. C. North, "NEATO User's Manual". | |
725 Available on research.att.com in dist/drawdag/neatodoc.ps.Z. |