clustersKmeans
Description
Takes a set of points and partition them into clusters using the k-mean . It uses the k-means algorithm
Parameters
Name | Type | Description |
---|---|---|
points | FeatureCollection<Point> | to be clustered |
options? | Object | Optional parameters (default {}) |
options.numberOfClusters? | number | numberOfClusters that will be generated (default Math.sqrt(numberOfPoints/2)) |
options.mutate? | boolean | allows GeoJSON input to be mutated (significant performance increase if true) (default false) |
Returns
FeatureCollection<Point> Clustered Points with an additional two properties associated to each Feature:
- {number} cluster - the associated clusterId
- {[number, number]} centroid - Centroid of the cluster [Longitude, Latitude]
Examples
// create random points with random z-values in their properties
var points = turf.randomPoint(100, { bbox: [0, 30, 20, 50] });
var options = { numberOfClusters: 7 };
var clustered = turf.clustersKmeans(points, options);
Installation
$ npm install @turf/clusters-kmeans
import { clustersKmeans } from "@turf/clusters-kmeans";
const result = clustersKmeans(...);
$ npm install @turf/turf
import * as turf from "@turf/turf";
const result = turf.clustersKmeans(...);