Module
DataViz.Layout.Hierarchy.Pack
- Package
- purescript-hylograph-layout
- Repository
- afcondon/purescript-hylograph-layout
Circle packing layout algorithm.
Implements the front-chain circle packing algorithm for laying out hierarchical data as nested circles. Each node's area is proportional to its value, with children packed inside their parent's circle.
The algorithm:
- Build hierarchy from input data with
hierarchy - Pack sibling circles using
packSiblingsMap(front-chain algorithm) - Compute enclosing circle with
packEnclose - Recursively pack all levels with
pack
Based on Wang et al.'s "Visualization of Large Hierarchical Data by Circle Packing" and the D3.js implementation.
#enclosesWeak Source
enclosesWeak :: Circle -> Circle -> BooleanDoes circle a enclose circle b (with tolerance)?
#PackNode Source
#defaultPackConfig Source
defaultPackConfig :: forall a. PackConfig aDefault pack configuration
#HierarchyData Source
newtype HierarchyData aSimple hierarchy node for testing
Constructors
HierarchyData { children :: Maybe (Array (HierarchyData a)), data_ :: a, value :: Maybe Number }
#hierarchy Source
hierarchy :: forall a. HierarchyData a -> PackNode aCreate a hierarchy from data
- Modules
- DataViz.
Layout. Adjacency - DataViz.
Layout. Adjacency. Layout - DataViz.
Layout. Adjacency. Types - DataViz.
Layout. Chord - DataViz.
Layout. Chord. Layout - DataViz.
Layout. Chord. Types - DataViz.
Layout. Hierarchy. Cluster - DataViz.
Layout. Hierarchy. Core - DataViz.
Layout. Hierarchy. EdgeBundle - DataViz.
Layout. Hierarchy. EdgeBundle. Bilink - DataViz.
Layout. Hierarchy. EdgeBundle. BundleCurve - DataViz.
Layout. Hierarchy. EdgeBundle. Hierarchy - DataViz.
Layout. Hierarchy. EdgeBundle. RadialCluster - DataViz.
Layout. Hierarchy. EdgeBundle. Types - DataViz.
Layout. Hierarchy. Link - DataViz.
Layout. Hierarchy. Pack - DataViz.
Layout. Hierarchy. Partition - DataViz.
Layout. Hierarchy. Tree - DataViz.
Layout. Hierarchy. TreeStyle - DataViz.
Layout. Hierarchy. Treemap - DataViz.
Layout. Hierarchy. Types - DataViz.
Layout. Pattern - DataViz.
Layout. Pattern. Types - DataViz.
Layout. Sankey. CSV - DataViz.
Layout. Sankey. Compute - DataViz.
Layout. Sankey. ComputeWithSteps - DataViz.
Layout. Sankey. Path - DataViz.
Layout. Sankey. Types - DataViz.
Layout. StateMachine - DataViz.
Layout. StateMachine. Layout - DataViz.
Layout. StateMachine. Path - DataViz.
Layout. StateMachine. Types