@spatial/collect
collect
Merges a specified property from a FeatureCollection of points into a
FeatureCollection of polygons. Given an inProperty
on points and an outProperty
for polygons, this finds every point that lies within each polygon, collects the
inProperty
values from those points, and adds them as an array to outProperty
on the polygon.
Parameters
-
polygons
FeatureCollection<Polygon> polygons with values on which to aggregate -
points
FeatureCollection<Point> points to be aggregated -
inProperty
string property to be nested from -
outProperty
string property to be nested into
Examples
var poly1 = turf.polygon([[[0,0],[10,0],[10,10],[0,10],[0,0]]]);
var poly2 = turf.polygon([[[10,0],[20,10],[20,20],[20,0],[10,0]]]);
var polyFC = turf.featureCollection([poly1, poly2]);
var pt1 = turf.point([5,5], {population: 200});
var pt2 = turf.point([1,3], {population: 600});
var pt3 = turf.point([14,2], {population: 100});
var pt4 = turf.point([13,1], {population: 200});
var pt5 = turf.point([19,7], {population: 300});
var pointFC = turf.featureCollection([pt1, pt2, pt3, pt4, pt5]);
var collected = turf.collect(polyFC, pointFC, 'population', 'values');
var values = collected.features[0].properties.values
//=values => [200, 600]
//addToMap
var addToMap = [pointFC, collected]
Returns FeatureCollection<Polygon> polygons with properties listed based on outField
This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.
Installation
Install this module individually:
$ npm install @spatial/collect
Or install the Turf module that includes it as a function:
$ npm install @turf/turf