| wolffd@0 | 1                    Quick Reference Guide for GraphViz | 
| wolffd@0 | 2                            20 February 2002 | 
| wolffd@0 | 3 | 
| wolffd@0 | 4 | 
| wolffd@0 | 5 Command-line Invocation | 
| wolffd@0 | 6 | 
| wolffd@0 | 7   ------------------------------------------------------------------------ | 
| wolffd@0 | 8 All GraphViz programs have a similar invocation: | 
| wolffd@0 | 9  cmd [ flags ] [ input files ] | 
| wolffd@0 | 10 If no input files are supplied, the program reads from stdin. | 
| wolffd@0 | 11 | 
| wolffd@0 | 12 Flags | 
| wolffd@0 | 13 | 
| wolffd@0 | 14 -Gname=value | 
| wolffd@0 | 15      Set a graph attribute. | 
| wolffd@0 | 16 -Nname=value | 
| wolffd@0 | 17      Set a default node attribute. | 
| wolffd@0 | 18 -Ename=value | 
| wolffd@0 | 19      Set a default edge attribute. | 
| wolffd@0 | 20 -Tformat | 
| wolffd@0 | 21      Set output language to one of the supported formats. By default, | 
| wolffd@0 | 22      attributed dot is produced. | 
| wolffd@0 | 23 -V | 
| wolffd@0 | 24      Emit version information and exit. | 
| wolffd@0 | 25 -llibfile | 
| wolffd@0 | 26      User-supplied, device-dependent library files. Multiple libraries may | 
| wolffd@0 | 27      be given. These names are passed to the code generator at the beginning | 
| wolffd@0 | 28      of output. | 
| wolffd@0 | 29 -n[num] | 
| wolffd@0 | 30      Sets no-op flag in neato. If set, neato assumes nodes have already been | 
| wolffd@0 | 31      positioned and have a pos attribute giving this position. It then just | 
| wolffd@0 | 32      computes the edge layouts and emits the graph in the appropriate | 
| wolffd@0 | 33      format. If num is supplied and > 1, neato checks for previously | 
| wolffd@0 | 34      positioned edges, with control points provided in the pos attribute. It | 
| wolffd@0 | 35      uses these if given; otherwise, it computes the edge layout. | 
| wolffd@0 | 36 -ooutfile | 
| wolffd@0 | 37      Write output to file outfile. By default, output goes to stdout. | 
| wolffd@0 | 38 -s[scale] | 
| wolffd@0 | 39      Set input scale to scale. If this value is omitted, 72.0 is used. This | 
| wolffd@0 | 40      number is used to convert the point coordinate units used in the pos | 
| wolffd@0 | 41      attribute into inches. For example, dot -Tdot produces pos values in | 
| wolffd@0 | 42      points, with 72 per inch. Thus, to use this output as input to neato | 
| wolffd@0 | 43      -n, one needs -s (equivalently, -s72). | 
| wolffd@0 | 44 -v | 
| wolffd@0 | 45      Verbose mode | 
| wolffd@0 | 46 -x | 
| wolffd@0 | 47      In neato, on input, prune isolated nodes and peninsulas. This removes | 
| wolffd@0 | 48      uninteresting graph structure and produces a less cluttered drawing. | 
| wolffd@0 | 49 | 
| wolffd@0 | 50 Note that the file contents override the -G, -N and -E flags. In addition, | 
| wolffd@0 | 51 these flags cause the related attributes to be permanently attached to the | 
| wolffd@0 | 52 graph. Thus, if attributed dot is used for output, the graph will have these | 
| wolffd@0 | 53 attributes. | 
| wolffd@0 | 54 | 
| wolffd@0 | 55   ------------------------------------------------------------------------ | 
| wolffd@0 | 56 | 
| wolffd@0 | 57 The DOT Language | 
| wolffd@0 | 58 | 
| wolffd@0 | 59   ------------------------------------------------------------------------ | 
| wolffd@0 | 60 digraph G {foo -> bar; ... }  or graph G { foo -- bar;  ...} | 
| wolffd@0 | 61 | 
| wolffd@0 | 62 To connect all pairs: | 
| wolffd@0 | 63     {foo bar}->{baz bart} | 
| wolffd@0 | 64 | 
| wolffd@0 | 65 To make a chain of links: | 
| wolffd@0 | 66      foo->bar->baz | 
| wolffd@0 | 67 | 
| wolffd@0 | 68 Commas inside [...] and semicolons inside {...} are optional. | 
| wolffd@0 | 69 | 
| wolffd@0 | 70 Quotes are needed on attribute values to protect spaces, commas, periods, etc. | 
| wolffd@0 | 71 | 
| wolffd@0 | 72 // C++ like comment: to end of line | 
| wolffd@0 | 73 /* C-like comment: between delimiters */ | 
| wolffd@0 | 74 | 
| wolffd@0 | 75 For a complete language description, see | 
| wolffd@0 | 76 | 
| wolffd@0 | 77   http://www.research.att.com/~erg/graphviz/info/lang.html | 
| wolffd@0 | 78 | 
| wolffd@0 | 79   ------------------------------------------------------------------------ | 
| wolffd@0 | 80 | 
| wolffd@0 | 81 Attributes | 
| wolffd@0 | 82 | 
| wolffd@0 | 83   ------------------------------------------------------------------------ | 
| wolffd@0 | 84 | 
| wolffd@0 | 85        Name      Used By     Type         Default       Minimum    Notes | 
| wolffd@0 | 86  Damping         G       double      0.99              0.0       neato only | 
| wolffd@0 | 87  Epsilon         G       double      (.0001 * # nodes)           neato only | 
| wolffd@0 | 88  URL             ENGC    string | 
| wolffd@0 | 89  arrowhead       E       arrowType   normal | 
| wolffd@0 | 90  arrowsize       E       double      1.0               0.0 | 
| wolffd@0 | 91  arrowtail       E       arrowType   normal | 
| wolffd@0 | 92  bb              G       rect                                    write-only | 
| wolffd@0 | 93  bgcolor         G       color | 
| wolffd@0 | 94  bottomlabel     N       string      "" | 
| wolffd@0 | 95  center          G       bool        false | 
| wolffd@0 | 96  clusterrank     G       clusterMode local                       dot only | 
| wolffd@0 | 97  color           ENC     color       black | 
| wolffd@0 | 98  comment         ENG     string      "" | 
| wolffd@0 | 99  compound        G       bool        false                       dot only | 
| wolffd@0 | 100  concentrate     G       bool        false                       dot only | 
| wolffd@0 | 101  constraint      E       bool        true                        dot only | 
| wolffd@0 | 102  decorate        E       bool        false | 
| wolffd@0 | 103 | 
| wolffd@0 | 104  dir             E       dirType     forward(directed) | 
| wolffd@0 | 105                                      none(undirected) | 
| wolffd@0 | 106  distortion      N       double      0.0               -100.0 | 
| wolffd@0 | 107 | 
| wolffd@0 | 108  fillcolor       NC      color       lightgrey(nodes) | 
| wolffd@0 | 109                                      black(clusters) | 
| wolffd@0 | 110  fixedsize       N       bool        false | 
| wolffd@0 | 111  fontcolor       ENGC    color       black | 
| wolffd@0 | 112  fontname        ENGC    string      "Times-Roman" | 
| wolffd@0 | 113  fontpath        G       string      "" | 
| wolffd@0 | 114  fontsize        ENGC    double      14.0              1.0 | 
| wolffd@0 | 115  group           N       string      ""                          dot only | 
| wolffd@0 | 116  headURL         E       string      "" | 
| wolffd@0 | 117  headlabel       E       string      "" | 
| wolffd@0 | 118  headport        E       portPos     center | 
| wolffd@0 | 119  height          N       double      0.5               0.02 | 
| wolffd@0 | 120  K               G       double      1.0               0.0       sfdp only | 
| wolffd@0 | 121 | 
| wolffd@0 | 122  label           ENGC    string      "" | 
| wolffd@0 | 123                                      "\N" (nodes) | 
| wolffd@0 | 124  labelangle      E       double      -25.0             -180.0 | 
| wolffd@0 | 125  labeldistance   E       double      1.0               0.0 | 
| wolffd@0 | 126  labelfloat      E       bool        false | 
| wolffd@0 | 127  labelfontcolor  E       color       black | 
| wolffd@0 | 128  labelfontname   E       string      "Times-Roman" | 
| wolffd@0 | 129  labelfontsize   E       double      11.0              1.0 | 
| wolffd@0 | 130  labeljust       C       string      ""                          dot only | 
| wolffd@0 | 131 | 
| wolffd@0 | 132  labelloc        GC      string      "t"(clusters)               dot only | 
| wolffd@0 | 133                                      "b"(root graphs) | 
| wolffd@0 | 134  layer           EN      layerRange  "" | 
| wolffd@0 | 135  layers          G       layerList   "" | 
| wolffd@0 | 136  len             E       double      1.0                         neato only | 
| wolffd@0 | 137  levels          G       int         MAXINT            0         sfdp only | 
| wolffd@0 | 138  lhead           E       string      ""                          dot only | 
| wolffd@0 | 139  lp              EGC     point                                   write-only | 
| wolffd@0 | 140  ltail           E       string      ""                          dot only | 
| wolffd@0 | 141 | 
| wolffd@0 | 142  margin          G       double | 
| wolffd@0 | 143                          pointf | 
| wolffd@0 | 144  maxiter         G       int         MAXINT                      neato only | 
| wolffd@0 | 145  mclimit         G       double      1.0                         dot only | 
| wolffd@0 | 146  minlen          E       int         1                 0         dot only | 
| wolffd@0 | 147  model           G       string      ""                          neato only | 
| wolffd@0 | 148  nodesep         G       double      0.25              0.02      dot only | 
| wolffd@0 | 149  normalize       G       bool        false                       neato only | 
| wolffd@0 | 150  nslimit | 
| wolffd@0 | 151  nslimit1        G       double                                  dot only | 
| wolffd@0 | 152  ordering        G       string      ""                          dot only | 
| wolffd@0 | 153  orientation     N       double      0.0               360.0 | 
| wolffd@0 | 154  orientation     G       string      "" | 
| wolffd@0 | 155 | 
| wolffd@0 | 156  overlap         G       string      ""                          neato/sfdp only | 
| wolffd@0 | 157                          bool | 
| wolffd@0 | 158  page            G       pointf | 
| wolffd@0 | 159  pagedir         G       pagedir     BL | 
| wolffd@0 | 160  peripheries     N       int                           0 | 
| wolffd@0 | 161  pin             N       bool                                    neato only | 
| wolffd@0 | 162 | 
| wolffd@0 | 163  pos             EN      point | 
| wolffd@0 | 164                          splineType | 
| wolffd@0 | 165  quadtree        G       string      ""                          sfdp only | 
| wolffd@0 | 166  quantum         G       double      0.0               0.0 | 
| wolffd@0 | 167  rank            S       rankType                                dot only | 
| wolffd@0 | 168  rankdir         G       rankdir     TB                          dot only | 
| wolffd@0 | 169  ranksep         G       double      0.5               0.02 | 
| wolffd@0 | 170  ratio           G       double | 
| wolffd@0 | 171  rects           N       rect                                    write-only | 
| wolffd@0 | 172  regular         N       bool        false | 
| wolffd@0 | 173  remincross      G       bool        false                       dot only | 
| wolffd@0 | 174  repulsiveforce  G       double      1                 0.0       sfdp only | 
| wolffd@0 | 175  rotate          G       int         0 | 
| wolffd@0 | 176  samehead        E       string      ""                          dot only | 
| wolffd@0 | 177  sametail        E       string      ""                          dot only | 
| wolffd@0 | 178  samplepoints    G       int         8 | 
| wolffd@0 | 179  searchsize      G       int         30                          dot only | 
| wolffd@0 | 180  sep             G       double      0.01                        neato only | 
| wolffd@0 | 181  shape           N       shape       ellipse | 
| wolffd@0 | 182  shapefile       N       string      "" | 
| wolffd@0 | 183  showboxes       ENG     int         0                 0         dot only | 
| wolffd@0 | 184  sides           N       int         4                 0 | 
| wolffd@0 | 185  size            G       pointf | 
| wolffd@0 | 186  skew            N       double      0.0               -100.0 | 
| wolffd@0 | 187  smoothing       G       string      ""                          sfdp only | 
| wolffd@0 | 188  splines         G       bool        false                       neato only | 
| wolffd@0 | 189 | 
| wolffd@0 | 190  start           G       string      ""                          neato only | 
| wolffd@0 | 191                          int | 
| wolffd@0 | 192  style           ENC     style | 
| wolffd@0 | 193  styleheet       G       style | 
| wolffd@0 | 194  tailURL         E       string      "" | 
| wolffd@0 | 195  taillabel       E       string      "" | 
| wolffd@0 | 196  tailport        E       portPos     center | 
| wolffd@0 | 197  toplabel        N       string      "" | 
| wolffd@0 | 198  vertices        N       pointfList                              write-only | 
| wolffd@0 | 199  voro_margin     G       double      0.05              0.0       neato only | 
| wolffd@0 | 200  w               E       double      1.0                         neato only | 
| wolffd@0 | 201 | 
| wolffd@0 | 202  weight          E       double      1.0               0(dot) | 
| wolffd@0 | 203                                                        1(neato) | 
| wolffd@0 | 204  width           N       double      0.75              0.01 | 
| wolffd@0 | 205 | 
| wolffd@0 | 206  z               N       double      0.0               -MAXFLOAT | 
| wolffd@0 | 207                                                        -1000 | 
| wolffd@0 | 208            ------------------------------------------------------ | 
| wolffd@0 | 209 For the bool type, TRUE values are represented by "true" (case-insensitive) | 
| wolffd@0 | 210 and any non-zero integer, and FALSE values by "false" (case-insensitive) and | 
| wolffd@0 | 211 zero. | 
| wolffd@0 | 212 | 
| wolffd@0 | 213 In the Used By field, the characters E, N, G and C represent edges, nodes, | 
| wolffd@0 | 214 the root graph and cluster subgraphs, respectively. This field indicates | 
| wolffd@0 | 215 which graph component uses the attribute. | 
| wolffd@0 | 216   ------------------------------------------------------------------------ | 
| wolffd@0 | 217 | 
| wolffd@0 | 218 Attribute Descriptions | 
| wolffd@0 | 219 | 
| wolffd@0 | 220 Damping | 
| wolffd@0 | 221      Factor damping force motions. On each iteration, a nodes movement is | 
| wolffd@0 | 222      limited to this factor of its potential motion. By being less than 1.0, | 
| wolffd@0 | 223      the system tends to ``cool'', thereby preventing cycling. | 
| wolffd@0 | 224 Epsilon | 
| wolffd@0 | 225      Terminating condition. If the length squared of all energy gradients | 
| wolffd@0 | 226      are < Epsilon, the algorithm stops. | 
| wolffd@0 | 227 URL | 
| wolffd@0 | 228      Incorporated into device-dependent output. At present, used for ps2, | 
| wolffd@0 | 229      i*map and svg. For ps2, URLs can be attached to nodes and the root | 
| wolffd@0 | 230      graph. When distilled to PDF, such nodes are active links and the graph | 
| wolffd@0 | 231      URL can be used as a base URL. For i*map, URLs can be attached to | 
| wolffd@0 | 232      nodes, edges and the root graph. If the node or edge URL contains "\N", | 
| wolffd@0 | 233      this is replaced by the object's name. For svg, URLs can be attached to | 
| wolffd@0 | 234      nodes, edges and clusters, with "\N" replacement done for all three. | 
| wolffd@0 | 235 arrowhead | 
| wolffd@0 | 236      Style of arrowhead on head of edge. | 
| wolffd@0 | 237 arrowsize | 
| wolffd@0 | 238      Multiplicative scale factor for arrowheads. | 
| wolffd@0 | 239 arrowtail | 
| wolffd@0 | 240      Style of arrowhead on tail of edge. | 
| wolffd@0 | 241 bb | 
| wolffd@0 | 242      Bounding box of drawing in integer points. | 
| wolffd@0 | 243 bgcolor | 
| wolffd@0 | 244      Color used as background for canvas, plus initial fill color. | 
| wolffd@0 | 245 bottomlabel | 
| wolffd@0 | 246      Additional label near bottom of nodes of shape M*. | 
| wolffd@0 | 247 center | 
| wolffd@0 | 248      If true, the drawing is centered in the output canvas. | 
| wolffd@0 | 249 clusterrank | 
| wolffd@0 | 250      Mode used for handling clusters. If clusterrank is "local", a subgraph | 
| wolffd@0 | 251      whose name begins with "cluster" is given special treatment. The | 
| wolffd@0 | 252      subgraph is laid out separately, and then integrated as a unit into its | 
| wolffd@0 | 253      parent graph, with a bounding rectangle drawn about it. If the cluster | 
| wolffd@0 | 254      has a label parameter, this label is displayed within the rectangle. | 
| wolffd@0 | 255      Note also that there can be clusters within clusters. At present, the | 
| wolffd@0 | 256      modes "global" and "none" appear to be identical, both turning off the | 
| wolffd@0 | 257      special cluster processing. | 
| wolffd@0 | 258 color | 
| wolffd@0 | 259      Basic drawing color for graphics. | 
| wolffd@0 | 260 comment | 
| wolffd@0 | 261      Comments are inserted into output. Device-dependent | 
| wolffd@0 | 262 compound | 
| wolffd@0 | 263      If true, allow edges between clusters. (See lhead and ltail below.) | 
| wolffd@0 | 264 concentrate | 
| wolffd@0 | 265      If true, use edge concentrators. | 
| wolffd@0 | 266 constraint | 
| wolffd@0 | 267      If false, the edge is not used in ranking the nodes. For example, in | 
| wolffd@0 | 268      the graph | 
| wolffd@0 | 269 | 
| wolffd@0 | 270        digraph G { | 
| wolffd@0 | 271          a -> c; | 
| wolffd@0 | 272          a -> b; | 
| wolffd@0 | 273          b -> c [constraint=false]; | 
| wolffd@0 | 274        } | 
| wolffd@0 | 275 | 
| wolffd@0 | 276 | 
| wolffd@0 | 277      the edge b -> c does not add a constraint during rank assignment, so | 
| wolffd@0 | 278      the only constraints are that a be above b and c. | 
| wolffd@0 | 279 | 
| wolffd@0 | 280 decorate | 
| wolffd@0 | 281      If true, attach edge label to edge by a 2-segment polyline, underlining | 
| wolffd@0 | 282      the label, then going to the closest point of spline. | 
| wolffd@0 | 283 dir | 
| wolffd@0 | 284      Set edge type for drawing arrowheads. | 
| wolffd@0 | 285 distortion | 
| wolffd@0 | 286      Distortion factor for shape=polygon. Positive values cause top part to | 
| wolffd@0 | 287      be larger than bottom; negative values do the opposite. | 
| wolffd@0 | 288 fillcolor | 
| wolffd@0 | 289      If fillcolor is not defined, color is used. If this is not defined, the | 
| wolffd@0 | 290      default is used, except for shape=point or when the output format is | 
| wolffd@0 | 291      MIF, which use black by default. | 
| wolffd@0 | 292 fixedsize | 
| wolffd@0 | 293      If true, the node size is kept fixed and not expanded to contain the | 
| wolffd@0 | 294      text label. | 
| wolffd@0 | 295 fontcolor | 
| wolffd@0 | 296      Color used for text. | 
| wolffd@0 | 297 fontname | 
| wolffd@0 | 298      Font used for text. | 
| wolffd@0 | 299 fontpath | 
| wolffd@0 | 300      Directory list used by libgd to search for bitmap fonts. If fontpath is | 
| wolffd@0 | 301      not set, the environment variable DOTFONTPATH is checked. If that is | 
| wolffd@0 | 302      not set, GDFONTPATH is checked. If not set, libgd uses its compiled-in | 
| wolffd@0 | 303      font path. | 
| wolffd@0 | 304 fontsize | 
| wolffd@0 | 305      Font size, in points, used for text. | 
| wolffd@0 | 306 group | 
| wolffd@0 | 307      If the end points of an edge belong to the same group, i.e., have the | 
| wolffd@0 | 308      same group attribute, parameters are set to avoid crossings and keep | 
| wolffd@0 | 309      the edges straight. | 
| wolffd@0 | 310 headURL | 
| wolffd@0 | 311      For the output format imap, or cmap,  if headURL is defined, it is | 
| wolffd@0 | 312      output as part of the head label of the edge. If headURL contains | 
| wolffd@0 | 313      "\N", this will be replaced by the head label text. | 
| wolffd@0 | 314 headlabel | 
| wolffd@0 | 315      Text label to be placed near head of edge. | 
| wolffd@0 | 316 headport | 
| wolffd@0 | 317      Indicates where on the head node to attach the head of the edge. In the | 
| wolffd@0 | 318      default case, the edge is aimed towards the center of the node, and | 
| wolffd@0 | 319      then clipped at the node boundary. | 
| wolffd@0 | 320 height | 
| wolffd@0 | 321      Height of node, in inches. | 
| wolffd@0 | 322 K    constant used in the Fruchterman-Reingold force directed model. | 
| wolffd@0 | 323 label | 
| wolffd@0 | 324      Text label attached to objects. The escape sequences "\n", "\l" and | 
| wolffd@0 | 325      "\r" divide the label into lines, centered, left-justified and | 
| wolffd@0 | 326      right-justified, respectively. The escape sequence "\N" represents a | 
| wolffd@0 | 327      node's name. If a node's shape is record, then the label can have a | 
| wolffd@0 | 328      special format which describes the record layout. | 
| wolffd@0 | 329 labelangle | 
| wolffd@0 | 330      Angle, in degrees, that the headlabel(taillabel) is rotated from the | 
| wolffd@0 | 331      angle the edge makes incident with the head(tail) node, respectively. | 
| wolffd@0 | 332 labeldistance | 
| wolffd@0 | 333      Multiplicative scaling factor adjusting the distance that the | 
| wolffd@0 | 334      headlabel(taillabel) is the from head(tail) node. | 
| wolffd@0 | 335 labelfloat | 
| wolffd@0 | 336      If true, allows edge labels to be less constrained in position. In | 
| wolffd@0 | 337      particular, it may appear on top of other edges. | 
| wolffd@0 | 338 labelfontcolor | 
| wolffd@0 | 339      Color used for headlabel and taillabel. | 
| wolffd@0 | 340 labelfontname | 
| wolffd@0 | 341      Font used for headlabel and taillabel. | 
| wolffd@0 | 342 labelfontsize | 
| wolffd@0 | 343      Font size, in points, used for headlabel and taillabel. | 
| wolffd@0 | 344 labeljust | 
| wolffd@0 | 345      Justification for cluster labels. If "r", the label is right-justified | 
| wolffd@0 | 346      within bounding rectangle; otherwise, left-justified. | 
| wolffd@0 | 347 labelloc | 
| wolffd@0 | 348      Top/bottom placement of graph and cluster labels. If the attribute is | 
| wolffd@0 | 349      "t", place label at the top; if the attribute is "b", place label at | 
| wolffd@0 | 350      the bottom. By default, root graph labels go on the bottom and cluster | 
| wolffd@0 | 351      labels go on the top. | 
| wolffd@0 | 352 layer | 
| wolffd@0 | 353      Specifies layers in which the node or edge is present. | 
| wolffd@0 | 354 layers | 
| wolffd@0 | 355      Specifies a linearly ordered list of layer names attached to the graph | 
| wolffd@0 | 356      The graph is then output in separate layers. Only those components | 
| wolffd@0 | 357      belonging to the current output layer appear. For more information, see | 
| wolffd@0 | 358      the page How to use drawing layers (overlays). | 
| wolffd@0 | 359 len | 
| wolffd@0 | 360      Preferred edge length, in inches. | 
| wolffd@0 | 361 levels | 
| wolffd@0 | 362      Number of levels allowed in the multilevel scheme. Default is MAXINT. | 
| wolffd@0 | 363 lhead | 
| wolffd@0 | 364      Logical head of an edge. When compound is true, if lhead is defined and | 
| wolffd@0 | 365      is the name of a cluster containing the real head, the edge is clipped | 
| wolffd@0 | 366      to the boundary of the cluster. | 
| wolffd@0 | 367 lp | 
| wolffd@0 | 368      Label position, in points. | 
| wolffd@0 | 369 ltail | 
| wolffd@0 | 370      Logical tail of an edge. When compound is true, if ltail is defined and | 
| wolffd@0 | 371      is the name of a cluster containing the real tail, the edge is clipped | 
| wolffd@0 | 372      to the boundary of the cluster. | 
| wolffd@0 | 373 margin | 
| wolffd@0 | 374      Set x and y margins of canvas, in inches. In first case, both margins | 
| wolffd@0 | 375      are set equal to the given value. | 
| wolffd@0 | 376 maxiter | 
| wolffd@0 | 377      Sets the number of iterations used. | 
| wolffd@0 | 378 mclimit | 
| wolffd@0 | 379      Multiplicative scale factor used to alter the MinQuit (default = 8) and | 
| wolffd@0 | 380      MaxIter (default = 24) parameters used during crossing minimization. | 
| wolffd@0 | 381      These correspond to the number of tries without improvement before | 
| wolffd@0 | 382      quitting and the maximum number of iterations in each pass. | 
| wolffd@0 | 383 minlen | 
| wolffd@0 | 384      Minimum edge length (rank difference between head and tail). | 
| wolffd@0 | 385 model | 
| wolffd@0 | 386      If "circuit", use circuit resistance model to compute dissimilarity | 
| wolffd@0 | 387      values; otherwise, use shortest path model. | 
| wolffd@0 | 388 nodesep | 
| wolffd@0 | 389      Minimum space between two adjacent nodes in the same rank, in inches. | 
| wolffd@0 | 390 normalize | 
| wolffd@0 | 391      If set, normalize coordinates of final layout so that the first point | 
| wolffd@0 | 392      is at the origin, and then rotate the layout so that the first edge is | 
| wolffd@0 | 393      horizontal. | 
| wolffd@0 | 394 nslimit , | 
| wolffd@0 | 395 nslimit1 | 
| wolffd@0 | 396      Used to set number of iterations in network simplex applications. | 
| wolffd@0 | 397      nslimit is used in computing node x coordinates, nslimit1 for ranking | 
| wolffd@0 | 398      nodes. If defined, # iterations = nslimit(1) * # nodes; otherwise, # | 
| wolffd@0 | 399      iterations = MAXINT. | 
| wolffd@0 | 400 ordering | 
| wolffd@0 | 401      If "out" for a graph G, and n is a node in G, then edges n->* appear | 
| wolffd@0 | 402      left-to-right in the same order in which they are defined. | 
| wolffd@0 | 403 orientation | 
| wolffd@0 | 404      Angle, in degrees, used to rotate node shapes. | 
| wolffd@0 | 405 orientation | 
| wolffd@0 | 406      If "[lL]*", set graph orientation to landscape Used only if rotate is | 
| wolffd@0 | 407      not defined. | 
| wolffd@0 | 408 overlap | 
| wolffd@0 | 409      If "scale", remove node overlaps by scaling; if converts to false, | 
| wolffd@0 | 410      remove node overlaps by the Voronoi technique; otherwise, leave | 
| wolffd@0 | 411      overlaps. | 
| wolffd@0 | 412 page | 
| wolffd@0 | 413      Width and height of output pages, in inches. If this is set and is | 
| wolffd@0 | 414      smaller than the size of the layout, a rectangular array of pages of | 
| wolffd@0 | 415      the specified page size is overlaid on the layout, with origins aligned | 
| wolffd@0 | 416      in the lower-left corner, thereby partitioning the layout into pages. | 
| wolffd@0 | 417      The pages are then produced one at a time, in pagedir order. | 
| wolffd@0 | 418 pagedir | 
| wolffd@0 | 419      If the page attribute is set and applicable, this attribute specifies | 
| wolffd@0 | 420      the order in which the pages are emitted. This is limited to one of the | 
| wolffd@0 | 421      8 row or column major orders. | 
| wolffd@0 | 422 peripheries | 
| wolffd@0 | 423      Set number of peripheries used in polygonal shapes. | 
| wolffd@0 | 424 pin | 
| wolffd@0 | 425      If true and the node has a pos attribute on input, neato prevents the | 
| wolffd@0 | 426      node from moving from the input position. This property can also be | 
| wolffd@0 | 427      specified in the pos attribute itself (cf. the point type). | 
| wolffd@0 | 428 pos | 
| wolffd@0 | 429      Position of node, or spline control points, in points. In neato, pos | 
| wolffd@0 | 430      can be used to set initial position of a node. Concerning this, see the | 
| wolffd@0 | 431      -s command line flag. | 
| wolffd@0 | 432 quantum | 
| wolffd@0 | 433      If quantum > 0.0, node label dimensions will be rounded to integral | 
| wolffd@0 | 434      multiples of the quantum. | 
| wolffd@0 | 435 quadtree | 
| wolffd@0 | 436      Quadtree scheme to use. Values are "normal" (default), "fast" or "none". | 
| wolffd@0 | 437      "fast" gives about 2-4 overall speedup compared with "normal", though | 
| wolffd@0 | 438      layout quality can suffer a little. | 
| wolffd@0 | 439 rank | 
| wolffd@0 | 440      Rank constraints on the nodes in a subgraph. If rank="same", all nodes | 
| wolffd@0 | 441      are placed on the same rank. If rank="min", all nodes are placed on the | 
| wolffd@0 | 442      minimum rank. If rank="source", all nodes are placed on the minimum | 
| wolffd@0 | 443      rank, and the only nodes on the minimum rank belong to some subgraph | 
| wolffd@0 | 444      whose rank attribute is "source" or "min". Analogous criteria hold for | 
| wolffd@0 | 445      rank="max" and rank="sink". (Note: the minimum rank is topmost or | 
| wolffd@0 | 446      leftmost, and the maximum rank is bottommost or rightmost.) | 
| wolffd@0 | 447 rankdir | 
| wolffd@0 | 448      Sets direction of graph layout. If rankdir="LR", the graph is laid out | 
| wolffd@0 | 449      from left to right, i.e., directed edges tend to go from left to right. | 
| wolffd@0 | 450      By default, graphs are laid out from top to bottom. | 
| wolffd@0 | 451 ranksep | 
| wolffd@0 | 452      In dot, this the gives desired rank separation, in inches. This is the | 
| wolffd@0 | 453      minimum vertical distance between the bottom of the nodes in one rank | 
| wolffd@0 | 454      and the tops of nodes in the next. If the value contains "equally", the | 
| wolffd@0 | 455      centers of all ranks are spaced equally apart. Note that both settings | 
| wolffd@0 | 456      are possible, e.g., ranksep = "1.2 equally". In twopi, specifies radial | 
| wolffd@0 | 457      separation of ranks. | 
| wolffd@0 | 458 ratio | 
| wolffd@0 | 459      Sets the aspect ratio (drawing height/drawing width) for the drawing. | 
| wolffd@0 | 460      Note that this is adjusted before the size attribute constraints are | 
| wolffd@0 | 461      enforced. | 
| wolffd@0 | 462 | 
| wolffd@0 | 463      If ratio is numeric, it is taken as the desired aspect ratio. Then, if | 
| wolffd@0 | 464      the actual aspect ratio is less than the desired ratio, the drawing | 
| wolffd@0 | 465      height is scaled up to achieve the desired ratio; if the actual ratio | 
| wolffd@0 | 466      is greater than that desired ratio, the drawing width is scaled up. | 
| wolffd@0 | 467 | 
| wolffd@0 | 468      If ratio = "fill" and the size attribute is set, the drawing is scaled | 
| wolffd@0 | 469      to achieve the aspect ratio implied by size. As size is set, when the | 
| wolffd@0 | 470      drawing is later scaled to fit that rectangle, the resulting picture | 
| wolffd@0 | 471      will fill the rectangle. | 
| wolffd@0 | 472 | 
| wolffd@0 | 473      If ratio = "compress" and the size attribute is set, dot attempts to | 
| wolffd@0 | 474      compress the initial layout to fit in the given size. This achieves a | 
| wolffd@0 | 475      tighter packing of nodes but reduces the balance and symmetry. | 
| wolffd@0 | 476 | 
| wolffd@0 | 477      If ratio = "auto", the page attribute is set and the graph cannot be | 
| wolffd@0 | 478      drawn on a single page, then size is set to an ``ideal'' value. In | 
| wolffd@0 | 479      particular, the size in a given dimension will be the smallest integral | 
| wolffd@0 | 480      multiple of the page size in that dimension which is at least half the | 
| wolffd@0 | 481      current size. The two dimensions are then scaled independently to the | 
| wolffd@0 | 482      new size. | 
| wolffd@0 | 483 rects | 
| wolffd@0 | 484      Rectangles for fields of records, in points. | 
| wolffd@0 | 485 regular | 
| wolffd@0 | 486      If true, force polygon to be regular. | 
| wolffd@0 | 487 repulsiveforce | 
| wolffd@0 | 488      The power of repulsive force used in an extended Fruchterman-Reingold | 
| wolffd@0 | 489      force directed model. Default is 1. Values larger than 1 tend to reduce | 
| wolffd@0 | 490      the warping effect at the expensive of less clustering. | 
| wolffd@0 | 491 remincross | 
| wolffd@0 | 492      If true and there are multiple clusters, run cross minimization a | 
| wolffd@0 | 493      second time. | 
| wolffd@0 | 494 rotate | 
| wolffd@0 | 495      If 90, set drawing orientation to landscape. | 
| wolffd@0 | 496 samehead | 
| wolffd@0 | 497      Edges with the same head and the same samehead value are aimed at the | 
| wolffd@0 | 498      same point on the head. | 
| wolffd@0 | 499 sametail | 
| wolffd@0 | 500      Edges with the same tail and the same sametail value are aimed at the | 
| wolffd@0 | 501      same point on the tail. | 
| wolffd@0 | 502 samplepoints | 
| wolffd@0 | 503      If the input graph defines the vertices attribute, and output is plain* | 
| wolffd@0 | 504      or attributed dot, this give the number of points used to represent | 
| wolffd@0 | 505      circles and ellipses. It plays the same role in neato, when adjusting | 
| wolffd@0 | 506      the layout to avoid overlapping nodes. | 
| wolffd@0 | 507 searchsize | 
| wolffd@0 | 508      During network simplex, maximum number of edges with negative cut | 
| wolffd@0 | 509      values to search when looking for one with minimum cut value. | 
| wolffd@0 | 510 sep | 
| wolffd@0 | 511      Fraction to increase polygons (multiply coordinates by 1 + sep) for | 
| wolffd@0 | 512      purposes of determining overlap. Guarantees a minimal non-zero distance | 
| wolffd@0 | 513      between nodes. | 
| wolffd@0 | 514 shape | 
| wolffd@0 | 515      Set shape of node. | 
| wolffd@0 | 516 shapefile | 
| wolffd@0 | 517      For output format is ps* or svg*, if non-empty, taken as a filename | 
| wolffd@0 | 518      containing a device-dependent description of a node's shape. | 
| wolffd@0 | 519 showboxes | 
| wolffd@0 | 520      Print guide boxes in PostScript at the beginning of routesplines if 1, | 
| wolffd@0 | 521      or at the end if 2. (Debugging) | 
| wolffd@0 | 522 sides | 
| wolffd@0 | 523      Number of sides if shape=polygon. | 
| wolffd@0 | 524 size | 
| wolffd@0 | 525      Maximum width and height of drawing, inches. If defined and the drawing | 
| wolffd@0 | 526      is too large, the drawing is uniformly scaled down so that it fits | 
| wolffd@0 | 527      within the given size. Note that there is some interaction between the | 
| wolffd@0 | 528      size and ratio attributes. | 
| wolffd@0 | 529 skew | 
| wolffd@0 | 530      Skew factor for shape=polygon. Positive values skew top of polygon to | 
| wolffd@0 | 531      right; negative to left. | 
| wolffd@0 | 532 smoothing | 
| wolffd@0 | 533      A post processing step to smooth out uneven distribution of nodes. Possible | 
| wolffd@0 | 534      values are "none" (default), "avg_dist", "graph_dist", "power_dist", "rng", | 
| wolffd@0 | 535      "spring" and "triangle". | 
| wolffd@0 | 536 splines | 
| wolffd@0 | 537      If true, draw edges as splines. This requires non-overlapping nodes | 
| wolffd@0 | 538      (cf. overlap). | 
| wolffd@0 | 539 start | 
| wolffd@0 | 540      Parameter used to determine the initial layout of nodes. By default, | 
| wolffd@0 | 541      nodes are randomly placed in a square whose sides have length (# | 
| wolffd@0 | 542      nodes). The same seed is always used for the random number generator, | 
| wolffd@0 | 543      so the initial placement is repeatable. If start converts to an | 
| wolffd@0 | 544      integer, this is used as a seed value for the random number generator. | 
| wolffd@0 | 545      If start is "regular", the nodes are placed regularly about a circle. | 
| wolffd@0 | 546      Finally, if start is defined but is not one of the above cases, the | 
| wolffd@0 | 547      current time is used to pick a seed. | 
| wolffd@0 | 548 style | 
| wolffd@0 | 549      Set style for node or edge. For cluster subgraph, if "filled", the | 
| wolffd@0 | 550      cluster box's background is filled. | 
| wolffd@0 | 551 stylesheet | 
| wolffd@0 | 552      The URL of a CSS stylesheet to be referenced from the output file. | 
| wolffd@0 | 553      Relevant only for SVG output. | 
| wolffd@0 | 554 tailURL | 
| wolffd@0 | 555      When the output format is imap, or cmap, if tailURL is defined, it is | 
| wolffd@0 | 556      output as part of the tail label of the edge. If tailURL | 
| wolffd@0 | 557      contains "\N", this will be replaced by the tail label text. | 
| wolffd@0 | 558 taillabel | 
| wolffd@0 | 559      Text label to be placed near tail of edge. | 
| wolffd@0 | 560 tailport | 
| wolffd@0 | 561      Indicates where on the tail node to attach the tail of the edge. | 
| wolffd@0 | 562 toplabel | 
| wolffd@0 | 563      Additional label near top of nodes of shape M*. | 
| wolffd@0 | 564 vertices | 
| wolffd@0 | 565      If the input graph defines this attribute, the node is polynomial, and | 
| wolffd@0 | 566      output is plain* or attributed dot, this attribute provides the | 
| wolffd@0 | 567      coordinates of the vertices of the node's polynomial, in points. If the | 
| wolffd@0 | 568      node is an ellipse or circle, the samplepoints attribute affects the | 
| wolffd@0 | 569      output. | 
| wolffd@0 | 570 voro_margin | 
| wolffd@0 | 571      Factor to scale up drawing to allow margin for expansion in Voronoi | 
| wolffd@0 | 572      technique. dim' = (1+2*margin)*dim. | 
| wolffd@0 | 573 w | 
| wolffd@0 | 574      Redundant definition of weight in neato, cf. bug 9. | 
| wolffd@0 | 575 weight | 
| wolffd@0 | 576      Weight of edge. Usually, the heavier the weight, the shorter (and, in | 
| wolffd@0 | 577      dot, straighter and more vertical) an edge is. | 
| wolffd@0 | 578 width | 
| wolffd@0 | 579      Width of node, in inches. | 
| wolffd@0 | 580 z | 
| wolffd@0 | 581      Provides z coordinate for the node when output format is VRML. | 
| wolffd@0 | 582 | 
| wolffd@0 | 583   ------------------------------------------------------------------------ | 
| wolffd@0 | 584 | 
| wolffd@0 | 585 Attribute Type Descriptions | 
| wolffd@0 | 586 | 
| wolffd@0 | 587 arrowType | 
| wolffd@0 | 588       "normal"         "inv" | 
| wolffd@0 | 589 | 
| wolffd@0 | 590       "dot"            "invdot" | 
| wolffd@0 | 591 | 
| wolffd@0 | 592       "odot"           "invodot" | 
| wolffd@0 | 593 | 
| wolffd@0 | 594       "none" | 
| wolffd@0 | 595 clusterMode | 
| wolffd@0 | 596      "local","global","none" | 
| wolffd@0 | 597 color | 
| wolffd@0 | 598       "#%2x%2x%2x"   RGB | 
| wolffd@0 | 599       "#%2x%2x%2x%2x"RGBA | 
| wolffd@0 | 600       "%lf,%lf,%lf"  HSV 0.0 <= values <= 1.0 | 
| wolffd@0 | 601       string         color name | 
| wolffd@0 | 602 dirType | 
| wolffd@0 | 603      For an edge T -> H; | 
| wolffd@0 | 604 | 
| wolffd@0 | 605       "forward"         "back" | 
| wolffd@0 | 606 | 
| wolffd@0 | 607       "both"            "none" | 
| wolffd@0 | 608 | 
| wolffd@0 | 609      For undirected edges T -- H;, one of the nodes, usually the righthand | 
| wolffd@0 | 610      one, is treated as the head for the purpose of interpreting "forward" | 
| wolffd@0 | 611      and "back". | 
| wolffd@0 | 612 layerList | 
| wolffd@0 | 613      list of strings separated by colons, tabs or spaces, defining layer | 
| wolffd@0 | 614      names and implicitly numbered 1,2,... | 
| wolffd@0 | 615 layerRange | 
| wolffd@0 | 616      layerId or layerId[:\t ]layerId, | 
| wolffd@0 | 617      where layerId = "all", decimal integer or layer name. (An integer i | 
| wolffd@0 | 618      corresponds to layer i.) | 
| wolffd@0 | 619 pagedir | 
| wolffd@0 | 620      "BL", "BR", "TL", "TR", "RB", "RT", "LB", "LT". These specify the 8 row | 
| wolffd@0 | 621      or column major orders for traversing a rectangular array, the first | 
| wolffd@0 | 622      character corresponding to the major order and the second to the minor | 
| wolffd@0 | 623      order. Thus, for "BL", the major order is from bottom to top, and the | 
| wolffd@0 | 624      minor order is from left to right. This means the bottom row is | 
| wolffd@0 | 625      traversed first, from left to right, then the next row up, from left to | 
| wolffd@0 | 626      right, and so on, until the topmost row is traversed. | 
| wolffd@0 | 627 point | 
| wolffd@0 | 628      "%d,%d"('!') representing the point (x,y). The optional '!' indicates | 
| wolffd@0 | 629      the node position should not change (input-only). | 
| wolffd@0 | 630 pointf | 
| wolffd@0 | 631      "%lf,%lf" representing the point (x,y). | 
| wolffd@0 | 632 pointfList | 
| wolffd@0 | 633      list of pointf, separated by spaces. | 
| wolffd@0 | 634 portPos | 
| wolffd@0 | 635      "n","ne","e","se","s","sw","w","nw" These correspond to the obvious | 
| wolffd@0 | 636      compass points on the node. | 
| wolffd@0 | 637 rankType | 
| wolffd@0 | 638      "same", "min", "source", "max", "sink" | 
| wolffd@0 | 639 rankdir | 
| wolffd@0 | 640      "LR". Any other value corresponds to a top-down layout. | 
| wolffd@0 | 641 rect | 
| wolffd@0 | 642      "%d,%d,%d,%d" The rect llx,lly,urx,ury gives the coordinates, in | 
| wolffd@0 | 643      points, of the lower-left corner (llx,lly) and the upper-right corner | 
| wolffd@0 | 644      (urx,ury). | 
| wolffd@0 | 645 shape | 
| wolffd@0 | 646      A string specifying the shape of a node. There are three main types of | 
| wolffd@0 | 647      shapes : polygon-based, record-based and PostScript-based. | 
| wolffd@0 | 648 splineType | 
| wolffd@0 | 649      spline ( ';' spline )* | 
| wolffd@0 | 650       where spline= (endp)? (startp)? point (triple)]* | 
| wolffd@0 | 651        and triple = point point point | 
| wolffd@0 | 652          and endp = "e,%d,%d" | 
| wolffd@0 | 653        and startp = "s,%d,%d" | 
| wolffd@0 | 654      If a spline has points p1 p2 p3 ... pn, (n = 1 (mod 3)), the points | 
| wolffd@0 | 655      correspond to the control points of a B-spline from p1 to pn. If startp | 
| wolffd@0 | 656      is given, it touches one node of the edge, and the arrowhead goes from | 
| wolffd@0 | 657      p1 to startp. If startp is not given, p1 touches a node. Similarly for | 
| wolffd@0 | 658      pn and endp. | 
| wolffd@0 | 659 style | 
| wolffd@0 | 660      styleItem ( ',' styleItem )* | 
| wolffd@0 | 661       where styleItem= name or name'('args')' | 
| wolffd@0 | 662             and args = name ( ',' name )* | 
| wolffd@0 | 663             and name = [^)(, ][^)(,]* | 
| wolffd@0 | 664      At present, the recognized style names comprise "dashed", "dotted", | 
| wolffd@0 | 665      "solid", "invis" and "bold" for nodes and edges, and "filled", | 
| wolffd@0 | 666      "diagonals" and "rounded" for nodes only. Additional styles are | 
| wolffd@0 | 667      available in device-dependent form. Style lists are passed to device | 
| wolffd@0 | 668      drivers, which can use this to generate appropriate output. | 
| wolffd@0 | 669 | 
| wolffd@0 | 670      Note that, at present, "rounded" cancels "filled", except for circles | 
| wolffd@0 | 671      and ellipses. This holds for the Mrecord shape, which is rounded by | 
| wolffd@0 | 672      definition. | 
| wolffd@0 | 673 | 
| wolffd@0 | 674   ------------------------------------------------------------------------ | 
| wolffd@0 | 675 | 
| wolffd@0 | 676 Output Formats | 
| wolffd@0 | 677 | 
| wolffd@0 | 678   ------------------------------------------------------------------------ | 
| wolffd@0 | 679 The output format is specified with the -Tlang flag on the command line, | 
| wolffd@0 | 680                     where lang is one of the following: | 
| wolffd@0 | 681                 Command-line | 
| wolffd@0 | 682                  parameter               Format | 
| wolffd@0 | 683                    canon | 
| wolffd@0 | 684                    cmap     Client-side imagemap | 
| wolffd@0 | 685                     dot     DOT | 
| wolffd@0 | 686                     fig     FIG | 
| wolffd@0 | 687                     gd | 
| wolffd@0 | 688                     gd2     GD/GD2 formats | 
| wolffd@0 | 689                     gif     GIF | 
| wolffd@0 | 690                    hpgl     HP-GL/2 | 
| wolffd@0 | 691                    imap     Server-side imagemap | 
| wolffd@0 | 692                    ismap    Server-side imagemap (deprecated) | 
| wolffd@0 | 693                     jpg | 
| wolffd@0 | 694                    jpeg     JPEG | 
| wolffd@0 | 695                     mif     FrameMaker MIF format | 
| wolffd@0 | 696                     mp      MetaPost | 
| wolffd@0 | 697                     pcl     PCL | 
| wolffd@0 | 698                     pic     PIC | 
| wolffd@0 | 699                    plain | 
| wolffd@0 | 700                  plain-ext  Simple text format | 
| wolffd@0 | 701                     png     Portable Network Graphics format | 
| wolffd@0 | 702                     ps      PostScript | 
| wolffd@0 | 703                     ps2     PostScript for PDF | 
| wolffd@0 | 704                     svg | 
| wolffd@0 | 705                    svgz     Scalable Vector Graphics | 
| wolffd@0 | 706                    vrml     VRML | 
| wolffd@0 | 707                     vtx     Visual Thought format | 
| wolffd@0 | 708                    wbmp     Wireless BitMap format | 
| wolffd@0 | 709   ------------------------------------------------------------------------ | 
| wolffd@0 | 710 | 
| wolffd@0 | 711 Format Descriptions | 
| wolffd@0 | 712 | 
| wolffd@0 | 713 canon , | 
| wolffd@0 | 714 dot | 
| wolffd@0 | 715      These two formats produce output in variations of the dot language. | 
| wolffd@0 | 716      Using canon produces a prettyprinted version of the input, with no | 
| wolffd@0 | 717      layout performed. | 
| wolffd@0 | 718 | 
| wolffd@0 | 719      dot corresponds to attributed dot, and is the default output format. It | 
| wolffd@0 | 720      reproduces the input, along with layout information for the graph. In | 
| wolffd@0 | 721      particular, a bb attribute is attached to the graph, specifying the | 
| wolffd@0 | 722      bounding box of the drawing. If the graph has a label, its position is | 
| wolffd@0 | 723      specified by the lp attribute. | 
| wolffd@0 | 724 | 
| wolffd@0 | 725      Each node gets pos, width and height attributes. If the node is a | 
| wolffd@0 | 726      record, the record rectangles are given in the rects attribute. If the | 
| wolffd@0 | 727      node is a polygon and the vertices attribute is defined, this attribute | 
| wolffd@0 | 728      contains the vertices of the node. | 
| wolffd@0 | 729 | 
| wolffd@0 | 730      Every edge is assigned a pos attribute, and if the edge has a label, | 
| wolffd@0 | 731      the label position is given in lp. | 
| wolffd@0 | 732 fig | 
| wolffd@0 | 733      Outputs graphs in the FIG graphics language. | 
| wolffd@0 | 734 gd , | 
| wolffd@0 | 735 gd2 | 
| wolffd@0 | 736      Output images in the GD and GD2 format. These are the internal formats | 
| wolffd@0 | 737      used by the gd library. The latter is compressed. | 
| wolffd@0 | 738 gif | 
| wolffd@0 | 739      Outputs GIF bitmap images. | 
| wolffd@0 | 740 hpgl | 
| wolffd@0 | 741      Produces output in the HP-GL/2 vector graphic printer language. | 
| wolffd@0 | 742 imap | 
| wolffd@0 | 743 cmap | 
| wolffd@0 | 744      Produces map files for server-side and client-side image maps, | 
| wolffd@0 | 745      respectively. These can be used in a web page with a graphical | 
| wolffd@0 | 746      form of the output, e.g. in JPEG or GIF format, to attach links | 
| wolffd@0 | 747      to nodes and edges. For example, given the dot file | 
| wolffd@0 | 748 | 
| wolffd@0 | 749        /* x.dot */ | 
| wolffd@0 | 750        digraph G { | 
| wolffd@0 | 751          URL="http://www.research.att.com/"; | 
| wolffd@0 | 752          command [URL="command.html"]; | 
| wolffd@0 | 753          command -> output [URL="colors.html"]; | 
| wolffd@0 | 754        } | 
| wolffd@0 | 755 | 
| wolffd@0 | 756 | 
| wolffd@0 | 757      this can be processed twice: | 
| wolffd@0 | 758 | 
| wolffd@0 | 759        dot -Timap > x.map | 
| wolffd@0 | 760        dot -Tgif > x.gif | 
| wolffd@0 | 761 | 
| wolffd@0 | 762 | 
| wolffd@0 | 763      and then be referred to in a web page, such as | 
| wolffd@0 | 764 | 
| wolffd@0 | 765        <A HREF="x.map"> | 
| wolffd@0 | 766        <IMG SRC="x.gif" ISMAP> | 
| wolffd@0 | 767        </A> | 
| wolffd@0 | 768 | 
| wolffd@0 | 769 | 
| wolffd@0 | 770      URLs can be attached to the root graph, nodes and edges. If the URL of | 
| wolffd@0 | 771      a node contains the escape sequence "\N", it will be replaced by the | 
| wolffd@0 | 772      node's name. If an edge has a URL, various points along the edge (but | 
| wolffd@0 | 773      not the head or tail) will link to it. In addition, if the edge has a | 
| wolffd@0 | 774      label, that will link to the URL. | 
| wolffd@0 | 775 | 
| wolffd@0 | 776      As for the head of the edge, this is linked to the headURL, if set. | 
| wolffd@0 | 777      Otherwise, it is linked to the edge's URL if that is defined. If the | 
| wolffd@0 | 778      headURL contains the escape sequence "\N", it will be replaced by the | 
| wolffd@0 | 779      headlabel, if defined. The analogous description holds for the tail, | 
| wolffd@0 | 780      tailURL and taillabel. | 
| wolffd@0 | 781 ismap | 
| wolffd@0 | 782      Produces HTML image map files. This is a predecessor (circa 1994) of | 
| wolffd@0 | 783      the IMAP format. Most servers now user the latter. URLs can be attached | 
| wolffd@0 | 784      to the root graph, nodes and edges. Since edge links are attached to | 
| wolffd@0 | 785      edge labels, an edge must have a label for its URL to be used. For both | 
| wolffd@0 | 786      nodes and edges, if the URL has the escape sequence "\N" embedded in | 
| wolffd@0 | 787      its string, this will be replaced with the node or edge name. | 
| wolffd@0 | 788 jpg , | 
| wolffd@0 | 789 jpeg | 
| wolffd@0 | 790      Output JPEG compressed image files. This format relies on the | 
| wolffd@0 | 791      installation having the JPEG library. | 
| wolffd@0 | 792 mif | 
| wolffd@0 | 793      Generates Frame Maker MIF files. | 
| wolffd@0 | 794 mp | 
| wolffd@0 | 795      Produces MetaPost output. | 
| wolffd@0 | 796 pcl | 
| wolffd@0 | 797      Produces output in the PCL printer language. HP-GL is a subset of PCL, | 
| wolffd@0 | 798      so that PCL output is the same as HP-GL, wrapped with some initial and | 
| wolffd@0 | 799      final commands to set the printer to and from HP-GL mode. | 
| wolffd@0 | 800 pic | 
| wolffd@0 | 801      Outputs in PIC, the picture description language in the troff-family | 
| wolffd@0 | 802 plain , | 
| wolffd@0 | 803 plain-ext | 
| wolffd@0 | 804      The plain and plain-ext formats produce output using a simple, | 
| wolffd@0 | 805      line-based language. The latter format differs in that, on edges, it | 
| wolffd@0 | 806      provides port names on head and tail nodes when applicable. | 
| wolffd@0 | 807 | 
| wolffd@0 | 808      There are four types of statements. | 
| wolffd@0 | 809 | 
| wolffd@0 | 810         graph scale width height | 
| wolffd@0 | 811         node name x y width height label style shape color fillcolor | 
| wolffd@0 | 812         edge tail head n x1 y1 .. xn yn [label xl yl] style color | 
| wolffd@0 | 813         stop | 
| wolffd@0 | 814 | 
| wolffd@0 | 815 | 
| wolffd@0 | 816      graph | 
| wolffd@0 | 817           The width and height values give the width and height of the | 
| wolffd@0 | 818           drawing. The lower left corner of the drawing is at the origin. | 
| wolffd@0 | 819           The scale value indicates how the drawing should be scaled if a | 
| wolffd@0 | 820           size attribute was given and the drawing needs to be scaled to | 
| wolffd@0 | 821           conform to that size. If no scaling is necessary, it will be set | 
| wolffd@0 | 822           to 1.0. Note that all graph, node and edge coordinates and lengths | 
| wolffd@0 | 823           are given unscaled. | 
| wolffd@0 | 824      node | 
| wolffd@0 | 825           The name value is the name of the node, and x and y give the | 
| wolffd@0 | 826           node's position. The width and height are the width and height of | 
| wolffd@0 | 827           the node. The label, style, shape, color and fillcolor give the | 
| wolffd@0 | 828           node's label, style, shape, color and fillcolor, respectively, | 
| wolffd@0 | 829           using attribute default values where necessary. If the node does | 
| wolffd@0 | 830           not have a style attribute, "solid" is used. | 
| wolffd@0 | 831      edge | 
| wolffd@0 | 832           The tail and head values give the names of the head and tail | 
| wolffd@0 | 833           nodes. n is the number of control points defining the B-spline | 
| wolffd@0 | 834           forming the edge. This is followed by 2*n numbers giving the x and | 
| wolffd@0 | 835           y coordinates of the control points in order from tail to head. If | 
| wolffd@0 | 836           the edge has a label, this comes next followed by the x and y | 
| wolffd@0 | 837           coordinates of the label's position. The edge description is | 
| wolffd@0 | 838           completed by the edge's style and color. As with nodes, if a style | 
| wolffd@0 | 839           is not defined, "solid" is used. | 
| wolffd@0 | 840      The output consists of one graph line, a sequence of node lines, one | 
| wolffd@0 | 841      per node, a sequence of edge lines, one per edge, and a final stop | 
| wolffd@0 | 842      line. All units are in inches, represented by a floating point number. | 
| wolffd@0 | 843 png | 
| wolffd@0 | 844      Produces output in the PNG (Portable Network Graphics) format. PNG | 
| wolffd@0 | 845      relies on having libz and the PNG library. | 
| wolffd@0 | 846 ps | 
| wolffd@0 | 847      Produces PostScript output. | 
| wolffd@0 | 848 ps2 | 
| wolffd@0 | 849      Produces PostScript output with PDF notations. It is assumed the output | 
| wolffd@0 | 850      will be directly converted into PDF format. The notations include PDF | 
| wolffd@0 | 851      bounding box information, so that the resulting PDF file can be | 
| wolffd@0 | 852      correctly used with pdf tools, such as pdflatex. In addition, if a node | 
| wolffd@0 | 853      has a URL attribute, this gets translated into PDF code such that the | 
| wolffd@0 | 854      node, when viewed in a PDF-viewer, e.g., acroread, is a link to the | 
| wolffd@0 | 855      given URL. If a URL is attached to the graph, this serves as a base, | 
| wolffd@0 | 856      such that relative URLs on nodes are derived from it. | 
| wolffd@0 | 857 svg , | 
| wolffd@0 | 858 svgz | 
| wolffd@0 | 859      Produce SVG output, the latter in compressed format. SVG relies on | 
| wolffd@0 | 860      having libz. | 
| wolffd@0 | 861 vrml | 
| wolffd@0 | 862      Outputs graphs in the VRML format. VRML relies on having the PNG | 
| wolffd@0 | 863      library. | 
| wolffd@0 | 864 vtx | 
| wolffd@0 | 865      Generates graph diagrams in the format for Confluents's Visual Thought. | 
| wolffd@0 | 866 wbmp | 
| wolffd@0 | 867      Produces output in the Wireless BitMap (WBMP) format, optimized for | 
| wolffd@0 | 868      mobile computing. | 
| wolffd@0 | 869 | 
| wolffd@0 | 870   ------------------------------------------------------------------------ |