Skip to content

turf-junkyard/turf-average

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

turf-average

build status

turf average module

turf.average(polygons, points, field, outputField)

Calculates the average value of a field for a set of Point|points within a set of Polygon|polygons.

Parameters

parameter type description
polygons FeatureCollection.<Polygon> polygons with values on which to average
points FeatureCollection.<Point> points from which to calculate the average
field String the field in the points features from which to pull values to average
outputField String the field in polygons to put results of the averages

Example

var polygons = {
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "type": "Polygon",
        "coordinates": [[
          [10.666351, 59.890659],
          [10.666351, 59.936784],
          [10.762481, 59.936784],
          [10.762481, 59.890659],
          [10.666351, 59.890659]
        ]]
      }
    }, {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "type": "Polygon",
        "coordinates": [[
          [10.764541, 59.889281],
          [10.764541, 59.937128],
          [10.866165, 59.937128],
          [10.866165, 59.889281],
          [10.764541, 59.889281]
        ]]
      }
    }
  ]
};
var points = {
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "population": 200
      },
      "geometry": {
        "type": "Point",
        "coordinates": [10.724029, 59.926807]
      }
    }, {
      "type": "Feature",
      "properties": {
        "population": 600
      },
      "geometry": {
        "type": "Point",
        "coordinates": [10.715789, 59.904778]
      }
    }, {
      "type": "Feature",
      "properties": {
        "population": 100
      },
      "geometry": {
        "type": "Point",
        "coordinates": [10.746002, 59.908566]
      }
    }, {
      "type": "Feature",
      "properties": {
        "population": 200
      },
      "geometry": {
        "type": "Point",
        "coordinates": [10.806427, 59.908910]
      }
    }, {
      "type": "Feature",
      "properties": {
        "population": 300
      },
      "geometry": {
        "type": "Point",
        "coordinates": [10.79544, 59.931624]
      }
    }
  ]
};

var averaged = turf.average(
 polygons, points, 'population', 'pop_avg');

var resultFeatures = points.features.concat(
  averaged.features);
var result = {
  "type": "FeatureCollection",
  "features": resultFeatures
};

//=result

Returns FeatureCollection.<Polygon>, polygons with the value of outField set to the calculated averages

Installation

Requires nodejs.

$ npm install turf-average

Tests

$ npm test

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •