Did you know ... | Search Documentation: |
Pack callgraph -- prolog/library/dot.pl |
Produces .dot language graphs from relational and functional schemata.
Graph strucure is as follows:
digraph ---> digraph(Name:term, G:list(element)). subgraph ---> subgraph(Name:term, G:list(element)). element ---> subgraph ; option ; node_opts(list(option)) ; edge_opts(list(option)) ; with_opts(element, list(option)) ; arrow(term,term) % directed edge ; line(term,term) % undirected edge ; node(term). option ---> opt_name=opt_value. opt_name == atom opt_value == phrase
Graph, node and edge labels can be terms and are written using write/1 for writing in the dot file.
Samer Abdallah Centre for Digital Music, Queen Mary, University of London, 2007 Department of Computer Science, UCL, 2014
graphviz_method ---> dot ; neato; fdp ; sfdp ; circo ; twopi ; unflatten ; unflatten(list(unflatten_opt)). unflatten_opt ---> l(N:natural) % -l<N> ; fl(N:natural) % -f -l<N> ; c(natural). % -c<N>
The unflatten method attempts to alleviate the problem of very wide graphs, and implies that dot is used to render the graph. The default option list is empty.
Fmt can be any format supported by Graphviz under the -T option, including ps, eps, pdf, svg, png.
See man page for unflatten for more information.
TODO
: Could add more options for dot.