simplify-geojson
Apply Ramer-Douglas-Peucker line simplification to GeoJSON features or feature collections in JS or on the CLI
Last updated 9 years ago by maxogden .
BSD-2-Clause · Repository · Bugs · Original npm · Tarball · package.json
$ npm install simplify-geojson 
SYNC missed versions from official npm registry.

simplify-geojson

Apply Ramer–Douglas–Peucker line simplification to GeoJSON features or feature collections in JS or on the CLI.

NPM

This module uses https://github.com/seabre/simplify-geometry for the simplification and wraps it in a interface for easily simplifying GeoJSON.

Install

npm install simplify-geojson

Usage

CLI

cat data.geojson | simplify-geojson -t 0.01

Tolerance is specified by either -t or --tolerance and is a number in degrees (e.g. lat/lon distance). 1 degree is roughly equivalent to 69 miles. the default is 0.001, which is around a city block long.

JS

var simplify = require('simplify-geojson')
var simplified = simplify(geojson, tolerance)

geojson can be any of the following:

  • Feature with a LineString
  • Feature with a MultiLineString
  • Feature with a Polygon
  • Feature with a MultiPolygon
  • FeatureCollection with any of the above

All segments in any of the supported types will be simplified (including holes in polygons, for instance).

Examples

Convert a CSV with lat/lon columns into geojson, then simplify that geojson, then open it in geojson.io (CSV is from my GPS logger and was my bike commute this morning):

npm install simplify-geojson geojsonio-cli csv2geojson -g
curl https://raw.github.com/maxogden/simplify-geojson/master/test-data/oakland-route.csv | \
  csv2geojson --lat "LATITUDE N/S" --lon "LONGITUDE E/W" --line true | \
  simplify-geojson -t 0.001 | \
  geojsonio

Simplify alaska's border outline and count the number of lines of the simplified geojson output (tweak -t to see how it affects length):

curl https://rawgit.com/johan/world.geo.json/master/countries/USA/AK.geo.json | \
  simplify-geojson -t 0.01 | \
  wc -l

Contributing

Contributors welcome! Please read the contributing guidelines before getting started.

License

BSD-2-Clause

Current Tags

  • 1.0.5                                ...           latest (3 years ago)

8 Versions

  • 1.0.5                                ...           3 years ago
  • 1.0.4                                ...           4 years ago
  • 1.0.3                                ...           8 years ago
  • 1.0.2                                ...           9 years ago
  • 1.0.1                                ...           9 years ago
  • 1.0.0                                ...           9 years ago
  • 0.0.2                                ...           11 years ago
  • 0.0.1                                ...           11 years ago
Maintainers (2)
Downloads
Total 8
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (3)
Dev Dependencies (2)
Dependents (1)

© 2010 - cnpmjs.org x YWFE | Home | YWFE