Graphalyze-0.14.1.1: 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.