将给定的点集合根据指定的半径值和聚类策略进行聚类,返回聚类后的点集合。
turf.getCluster(points, radius, options)
points:FeatureCollection类型,包含多个Point类型的特征。radius:数字类型,表示聚类的半径,单位为米。options:对象类型,可选参数。包含以下字段:
bbox:数组类型,表示限制聚类的范围,格式为[minimum longitude, minimum latitude, maximum longitude, maximum latitude]。count:数字类型,表示一个聚类中需要包含的最小点的数量。iterate:布尔类型,表示是否需要对每个聚类进行迭代处理。默认值为false。返回一个FeatureCollection类型的特征集合,其中每个特征都是一个聚类,每个聚类包含以下字段:
type:字符串类型,表示特征类型。固定为Feature。geometry:对象类型,表示聚类中心点的位置。固定为一个Point类型对象。properties:对象类型,表示聚类的属性:
cluster:布尔类型,表示该特征是否代表一个聚类。固定为true。cluster_id:字符串类型,表示该聚类的唯一标识符。point_count:数字类型,表示该聚类中包含的点的数量。expanded:布尔类型,表示该聚类是否已经被扩展。以下示例使用Turf.js的getCluster函数将一组随机点按照10米的半径进行聚类。这些点被随机生成,因此运行时可能会出现不同的结果。
var points = turf.randomPoint(100, {bbox: [100,0,110,10]});
var clustered = turf.getCluster(points, 10, {count: 1});
console.log(clustered);