dv_hierarchy library

Hierarchical data structures and layout algorithms.

Classes

Cluster<T>
Computes a cluster layout (dendrogram).
ClusterNode<T>
Node data for hierarchical clustering.
ClusterResult<T>
Result of hierarchical clustering.
Represents a link between two hierarchy nodes.
HierarchyNode<T>
Represents a node in a hierarchical data structure.
Pack<T>
Computes a circle-packing layout for hierarchical data.
Partition<T>
Computes a partition layout (also known as icicle or sunburst).
Tree<T>
Computes a tidy tree layout (Reingold-Tilford algorithm).
Treemap<T>
Computes a treemap layout for hierarchical data.

Enums

ClusterLinkage
Linkage methods for hierarchical clustering.
TreemapTiling
Treemap tiling methods.

Extensions

HierarchyNodeSorting on HierarchyNode<T>
Extension methods for sorting hierarchy nodes.

Functions

cluster<T>() Cluster<T>
Creates a cluster layout with default settings.
Generates a curved link path between two nodes.
clusterLinkRadial<T>(HierarchyNode<T> source, HierarchyNode<T> target, double cx, double cy) String
Generates a radial curved link path between two nodes.
clusterLinkRadialStep<T>(HierarchyNode<T> source, HierarchyNode<T> target, double cx, double cy) String
Generates a radial step link path between two nodes.
clusterLinkStep<T>(HierarchyNode<T> source, HierarchyNode<T> target) String
Generates a step link path between two nodes (for dendrograms).
clusterWithSize<T>(double width, double height) Cluster<T>
Creates a cluster layout with the given size.
hierarchicalClustering<T>({required List<T> data, required double distance(T, T), ClusterLinkage linkage = ClusterLinkage.average}) ClusterResult<T>
Performs agglomerative hierarchical clustering.
pack<T>() Pack<T>
Creates a pack layout with default settings.
packEnclose<T>(List<HierarchyNode<T>> circles) double
Packs a list of circles (without hierarchy) into a compact arrangement.
packWithSize<T>(double width, double height) Pack<T>
Creates a pack layout with the given size.
partition<T>() Partition<T>
Creates a partition layout with default settings.
partitionArc<T>(HierarchyNode<T> node, double centerX, double centerY) String
Generates an arc path string for a radial partition node.
partitionWithSize<T>(double width, double height) Partition<T>
Creates a partition layout with the given size.
tree<T>() Tree<T>
Creates a tree layout with default settings.
Generates a curved link path between two nodes.
treeLinkHorizontal<T>(HierarchyNode<T> source, HierarchyNode<T> target) String
Generates a horizontal curved link path between two nodes.
treeLinkRadial<T>(HierarchyNode<T> source, HierarchyNode<T> target, double cx, double cy) String
Generates a radial link path between two nodes.
treemap<T>() Treemap<T>
Creates a treemap layout with default settings.
treemapWithSize<T>(double width, double height) Treemap<T>
Creates a treemap layout with the given size.
treeWithSize<T>(double width, double height) Tree<T>
Creates a tree layout with the given size.