turf/packages/turf-isolines
mfedderly 42bd068574
Clean up .js files in various TypeScript-first packages (#2992)
* Migrate isobands and isolines grid lib files

* simplifyjs

* great-circle already migrated to upstream arc npm package

* Migrate js files in unkink-polygon, this felt kinda rough

* Migrate astar lib to typescript

* Remove heuristic option to fix typings
2026-01-01 12:23:13 -07:00
..
2025-11-08 14:54:10 +11:00
2025-11-08 14:54:10 +11:00
2017-03-05 23:40:09 -05:00
2025-11-27 17:43:27 +11:00

@turf/isolines

isolines

Takes a grid FeatureCollection of Point features with z-values and an array of value breaks and generates isolines.

Parameters

  • pointGrid FeatureCollection<Point> input points - must be square or rectangular and already gridded. That is, to have consistent x and y dimensions and be at least 2x2 in size.

  • breaks Array<number> values of zProperty where to draw isolines

  • options Object Optional parameters (optional, default {})

    • options.zProperty string the property name in points from which z-values will be pulled (optional, default 'elevation')
    • options.commonProperties Object GeoJSON properties passed to ALL isolines (optional, default {})
    • options.breaksProperties Array<Object> GeoJSON properties passed, in order, to the correspondent isoline; the breaks array will define the order in which the isolines are created (optional, default [])

Examples

// create a grid of points with random z-values in their properties
var extent = [0, 30, 20, 50];
var cellWidth = 100;
var pointGrid = turf.pointGrid(extent, cellWidth, {units: 'miles'});

for (var i = 0; i < pointGrid.features.length; i++) {
    pointGrid.features[i].properties.temperature = Math.random() * 10;
}
var breaks = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

var lines = turf.isolines(pointGrid, breaks, {zProperty: 'temperature'});

//addToMap
var addToMap = [lines];

Returns FeatureCollection<MultiLineString> a FeatureCollection of MultiLineString features representing isolines


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/isolines

Or install the all-encompassing @turf/turf module that includes all modules as functions:

$ npm install @turf/turf