mirror of
https://github.com/Turfjs/turf.git
synced 2026-01-25 16:07:00 +00:00
* Migrate @turf/interpolate to TypeScript * Fix interpolate type signature for better inference
@turf/interpolate
interpolate
Takes a set of points and estimates their 'property' values on a grid using the Inverse Distance Weighting (IDW) method.
Parameters
-
pointsFeatureCollection<Point> with known value -
cellSizenumber the distance across each grid point -
optionsObject Optional parameters (optional, default{})options.gridTypestring defines the output format based on a Grid Type (options: 'square' | 'point' | 'hex' | 'triangle') (optional, default'square')options.propertystring the property name inpointsfrom which z-values will be pulled, zValue fallbacks to 3rd coordinate if no property exists. (optional, default'elevation')options.unitsUnits used in calculating cellSize. Supports all valid Turf Units. (optional, default'kilometers')options.weightnumber exponent regulating the distance-decay weighting (optional, default1)options.bboxBBox Bounding Box Array [west, south, east, north] associated with the FeatureCollection. (optional, defaultbbox(points))
Examples
var points = turf.randomPoint(30, {bbox: [50, 30, 70, 50]});
// add a random property to each point
turf.featureEach(points, function(point) {
point.properties.solRad = Math.random() * 50;
});
var options = {gridType: 'points', property: 'solRad', units: 'miles'};
var grid = turf.interpolate(points, 100, options);
//addToMap
var addToMap = [grid];
Returns FeatureCollection<(Point | Polygon)> grid of points or polygons with interpolated 'property'
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 single module individually:
$ npm install @turf/interpolate
Or install the all-encompassing @turf/turf module that includes all modules as functions:
$ npm install @turf/turf