diagrams-contrib-1.4.4: Collection of user contributions to diagrams EDSL

Copyright (c) 2013-14 Jeffrey Rosenbluth BSD-style (see LICENSE) jeffrey.rosenbluth@gmail.com None Haskell2010

Diagrams.TwoD.Sunburst

Description

Generation of Sunburst Partitions. A radial view of a Treemap.

The partitions are created without examining the contents of the tree nodes which allows us to create a sunburst for any Tree a. As a consequence we cannot base the size or color of the sections on the data in the tree, but only on depth and number of children. Of course the code could easily be adapted to handle more specific tree data.

See John Stasko, Richard Catrambone, "An evaluation of space-filling information visualizations for depicting hierarchical structures", 2000. http://www.cc.gatech.edu/~john.stasko/papers/ijhcs00.pdf.

Synopsis

# Documentation

sunburst' :: (Renderable (Path V2 n) b, TypeableFloat n) => SunburstOpts n -> Tree a -> QDiagram b V2 n Any Source #

Take any Tree a and SunburstOpts and make a sunburst partition. Basically a treemap with a radial layout. The root is the center of the sunburst and its circumference is divided evenly according to the number of child nodes it has. Then each of those sections is treated the same way.

sunburst :: (Renderable (Path V2 n) b, TypeableFloat n) => Tree a -> QDiagram b V2 n Any Source #

sunburst with default opts

import Diagrams.TwoD.Sunburst
import Data.Tree (unfoldTree)
aTree = unfoldTree (\n -> (0, replicate n (n-1))) 6
sunburstEx = sunburst aTree # pad 1.1

data SunburstOpts n Source #

Constructors

 SunburstOpts Color list one for each ring. Fields_radius :: nRelative size of the root circle, usually 1._sectionWidth :: nRelative width of the sections._colors :: [Colour Double]
Instances
 Source # Instance detailsDefined in Diagrams.TwoD.Sunburst Methods

radius :: forall n. Lens' (SunburstOpts n) n Source #