mapbox / geojson-merge

Merge multiple GeoJSON files into one FeatureCollection.
ISC License
233 stars 33 forks source link
banished

geojson-merge

build status

Merge multiple GeoJSON files into one FeatureCollection.

install

$ npm install --save @mapbox/geojson-merge

API

merge

Merge a series of GeoJSON objects into one FeatureCollection containing all features in all files. The objects can be any valid GeoJSON root object, including FeatureCollection, Feature, and Geometry types.

Parameters

Examples

var geojsonMerge = require('@mapbox/geojson-merge');

var mergedGeoJSON = geojsonMerge.merge([
  { type: 'Point', coordinates: [0, 1] },
  { type: 'Feature', geometry: { type: 'Point', coordinates: [0, 1] }, properties: {} }
]);

console.log(JSON.stringify(mergedGeoJSON));

Returns Object a geojson FeatureCollection.

mergeFeatureCollectionStream

Merge GeoJSON files containing GeoJSON FeatureCollections into a single stream of a FeatureCollection as a JSON string.

This is more limited than merge - it only supports FeatureCollections as input - but more performant, since it can operate on GeoJSON files larger than what you can keep in memory at one time.

Parameters

Examples

var geojsonMerge = require('@mapbox/geojson-merge');

var mergedStream = geojsonMerge.mergeFeatureCollectionStream([
  'features.geojson',
  'otherFeatures.geojson'])

mergedStream.pipe(process.stdout);

Returns Stream output: a stringified JSON of a FeatureCollection.

cli

Options:

-s or --stream to use the high-performance streaming mode. This allows you to combine very large GeoJSON files. Streaming mode requires every GeoJSON file to contain a FeatureCollection at the top level.

$ npm install -g @mapbox/geojson-merge
$ geojson-merge file.geojson otherfile.geojson > combined.geojson

geojson-merge (for dummies)

Windows Instructions:

  1. Start the node.js application
  2. Open cmd.exe
  3. Browse to a folder where you'd like geojson-merge installed
  4. In cmd.exe type the install string from above
  5. Wait patiently, it could take a moment to start
  6. Use cd node_modules to change directory to the node_modules folder
  7. For simplicity sake, move your .geojson files into this node_modules directory
  8. Run this command to merge your files:
$ node geojson-merge file1.geojson file2.geojson > merged.geojson

Merging multiple files in a folder

$ geojson-merge folder/*.geojson > combined.geojson