dbscan_dart library

DBSCAN clustering algorithm implementation in Dart.

This library provides a Dart implementation of the DBSCAN (Density-Based Spatial Clustering of Applications with Noise) algorithm, which is commonly used for clustering spatial data.

Classes

ClusterId
Unique identifier for clusters in clustering algorithms.
ClusteringResult
Result of the DBSCAN clustering algorithm.
ClusterLabel
Represents a cluster label in DBSCAN results.
DBScan
DBSCAN (Density-Based Spatial Clustering of Applications with Noise) is a clustering algorithm designed to discover clusters of arbitrary shape in spatial data.
KDTree
A KD-Tree (k-dimensional tree) for efficient spatial queries.
LatLngPoint
A geographical point implementation for DBSCAN.
Node
A node in a KD-Tree.
PointId
Unique identifier for spatial points in clustering algorithms.
SpatialPoint
A spatial point interface for high-performance clustering algorithms.

Functions

quickSelect<T>(List<T> arr, int k, [int left = 0, int? right, Comparator<T>? compare]) → void
This function implements a fast selection algorithm (specifically, Floyd-Rivest selection).

Typedefs

ClusteringResultEntry = MapEntry<ClusterId, List<SpatialPoint>>
Type alias for a map entry in the clustering result.
ClusterLabelEntry = MapEntry<PointId, ClusterLabel>
Type alias for a map entry in the clustering result.