com.phronemophobic.clj-graphviz

guess-format

(guess-format fname)

Tries to guess an image format based off of a filename

layout

(layout graph)(layout graph layout-algorithm)

Layout graph and return basic layout info.

render-graph

(render-graph {:keys [nodes edges default-attributes flags], :as graph})(render-graph {:keys [nodes edges default-attributes flags], :as graph} {:keys [filename format layout-algorithm], :as options})

Layout a graph and save an image to filename.

A graph is map of the keys: :nodes, :edges, and :flags. :nodes: A sequence of nodes. Redundant if all nodes have edges. :edges: A sequences of tuples (from, to) of nodes. :subgraphs: A sequence of subgraphs which have the same specifications as graphs (except without :flags). :flags: flags should be a subset of #{:directed :strict} :default-attributes: A map node-types to their default attributes

Options is map of the keys: :filename, :format, :layout-algorithm. :filename: The name of the file to save the image to. (default graph.png) :format: One of :png :jpeg :jpg :gif :svg :pdf :bmp :eps :ico :ps :ps2 :tif :tiff :wbmp :layout-algorithm: one of the following: :dot (default) A Sugiyama-style hierarchical layout STT81, GKNV93. :neato A “symmetric” layout algorithm based on stress reduction. This is a variation of multidimensional scaling KS80, Coh87. The default implementation uses stress majorization GKN04. An alternate implementation uses the Kamada-Kawai algorithm KK89 :fdp An implementation of the Fruchterman-Reingold force-directed algorithm FR91 for “symmetric” layouts. This layout is similar to neato, but there are performance and feature differences. :sfdp A multiscale force-directed layout using a spring-electrical model Hu05. :twopi A radial layout as described by Wills Wil97. :circo A circular layout combining aspects of the work of Six and Tollis ST99, ST00 and Kaufmann and Wiese KW. :patchwork An implementation of squarified treemaps BHvW00.

supported-formats

supported-layout-algorithms