Graphalyze-0.15.0.0: Graph-Theoretic Analysis library.

Copyright(c) Ivan Lazar Miljenovic 2009
License2-Clause BSD
MaintainerIvan.Miljenovic@gmail.com
Safe HaskellNone
LanguageHaskell98

Data.Graph.Analysis.Visualisation

Contents

Description

Functions to assist in visualising graphs and components of graphs.

Synopsis

Graph visualisation.

Simple wrappers around the Haskell Data.GraphViz library to turn GraphDatas into basic DotGraphs for processing by the GraphViz suite of applications.

blankParams may be useful for creating initial definitions of GraphvizParams, especially for graphvizClusters.

graphviz :: Ord cl => GraphvizParams Node nl el cl l -> GraphData nl el -> DotGraph Node Source #

Convert the GraphData into DotGraph format.

graphvizClusters :: ClusterLabel nl => GraphvizParams Node nl el (Cluster nl) (NodeLabel nl) -> GraphData nl el -> DotGraph Node Source #

Convert the clustered GraphData into DotGraph format. Cluster the nodes based upon their ClusterLabel clusters.

assignCluster :: ClusterLabel cl => LNode cl -> LNodeCluster (Cluster cl) (NodeLabel cl) Source #

A function to convert an LNode to the required LNodeCluster for use with the GraphViz library.

setDir :: (GraphvizParams Node nl el cl l -> AGr nl el -> a) -> GraphvizParams Node nl el cl l -> GraphData nl el -> a Source #

A cross between applyDirAlg and setDirectedness.

Showing node groupings.

Printing different lists of labels.

showPath :: Show a => [a] -> String Source #

Print a path, with "->" between each element.

showPath' :: (a -> String) -> [a] -> String Source #

Print a path, with "->" between each element.

showCycle :: Show a => [a] -> String Source #

Print a cycle: copies the first node to the end of the list, and then calls showPath.

showCycle' :: (a -> String) -> [a] -> String Source #

Print a cycle: copies the first node to the end of the list, and then calls showPath'.

showNodes :: Show a => [a] -> String Source #

Show a group of nodes, with no implicit ordering.

showNodes' :: (a -> String) -> [a] -> String Source #

Show a group of nodes, with no implicit ordering.

Various printing functions.

blockPrint :: Show a => [a] -> String Source #

Attempt to convert the String form of a list into as much of a square shape as possible, using a single space as a separation string.

blockPrint' :: [String] -> String Source #

Attempt to convert a list of Strings into a single String that is roughly a square shape, with a single space as a row separator.

blockPrintList :: Show a => [a] -> String Source #

Attempt to convert the String form of a list into as much of a square shape as possible, separating values with commas.

blockPrintList' :: [String] -> String Source #

Attempt to combine a list of Strings into as much of a square shape as possible, separating values with commas.

blockPrintWith :: Show a => String -> [a] -> String Source #

Attempt to convert the String form of a list into as much of a square shape as possible, using the given separation string between elements in the same row.

blockPrintWith' :: String -> [String] -> String Source #

Attempt to convert the combined form of a list of Strings into as much of a square shape as possible, using the given separation string between elements in the same row.