Generates a description of graph
in DOT file format. The
formatting can be altered using graph->dot-properties,
vertex->dot,
and edge->dot
as well as edge-formatter,
vertex-formatter,
vertex-labeler,
and edge-labeler
. These can
be specified directly in the call to graph->dot
or by creating
subclasses of basic-graph, basic-vertex and basic-edge.
The output can be a stream or pathname or one of the values nil
ort
. If output is nil
, then graph->dot returns a string containing
the DOT description. If it is t
, then the DOT description is written
to standard-output.
Here is an example;
(let ((g (make-container 'graph-container :default-edge-type :directed)))
(loop for (a b) in '((a b) (b c) (b d) (d e) (e f) (d f)) do
(add-edge-between-vertexes g a b))
(graph->dot g nil))
digraph G
For more information about DOT file format, search the web for 'DOTTY' and
'GRAPHVIZ'.
graph->dot < cl-graph:basic-graph > < structure-class > |
graph->dot < cl-graph:basic-graph > < stream > |
graph->dot < cl-graph:basic-graph > < string > |
graph->dot < cl-graph:basic-graph > (eql nil) |
graph->dot < cl-graph:basic-graph > (eql t) |