All Graphviz attributes are specified by name-value pairs. Thus, to set the fillcolor of a node abc, one would use
| abc [fillcolor = red] |
| abc -> def [arrowhead = diamond] |
At present, most device-independent units are either inches or points, which we take as 72 points per inch.
Note: Some attributes, such as dir or arrowtail, are ambiguous when used in DOT with an undirected graph since the head and tail of an edge are meaningless. As a convention, the first time an undirected edge appears, the DOT parser will assign the left node as the tail node and the right node as the head. For example, the edge A -- B will have tail A and head B. It is the user's responsibility to handle such edges consistently. If the edge appears later, in the format
| B -- A [taillabel = "tail"] |
The tools accept standard C representations for int and double types. For the bool type, TRUE values are represented by "true" or "yes" (case-insensitive) and any non-zero integer, and FALSE values by "false" or "no" (case-insensitive) and zero. In addition, there are a variety of specialized types such as arrowType, color, pointf and rankdir. Legal values for these types are given at the end.
In the Used By field, the characters E, N, G, S and C represent edges, nodes, the root graph, subgraphs and cluster subgraphs, respectively. This field indicates which graph component uses the attribute.