Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

csv2geojson

mapbox22.7kMIT5.1.2

convert CSV files to GeoJSON

readme

Build Status

csv2geojson

Converts CSV and TSV files into GeoJSON data suitable for maps..

Using as a binary:

npm install -g csv2geojson
csv2geojson geodata.csv > geodata.geojson
➟ csv2geojson
Usage: csv2geojson --lat [string] --lon [string] --line [boolean] --delimiter [string] FILE

Options:
  --lat        the name of the latitude column
  --lon        the name of the longitude column
  --line       whether or not to output points as a LineString  [default: false]
  --delimiter  the type of delimiter                            [default: ","]
  --numeric-fields comma separated list of fields to convert to numbers

Using in nodejs

npm install --save csv2geojson
var csv2geojson = require('csv2geojson');

var geoJson = csv2geojson.csv2geojson(csvString, function(err, data) {
    // err has any parsing errors
    // data is the data.
});

api

csv2geojson.csv2geojson(csvString, {
    latfield: 'LATFIELDNAME',
    lonfield: 'LONFIELDNAME',
    delimiter: ','
}, function(err, data) {
});

Parse a CSV file and derive a GeoJSON FeatureCollection object from it. Err is non-falsy if latitude and longitude values cannot be detected or if there are invalid rows in the file. Delimiter can be ',' for CSV or '\t' for TSV or '|' and other delimiters.

Delimiter can also be auto, and it will try , \t | ; and choose the 'best'.

csv2geojson.dsv(delimiter).parse(dsvString);

The dsv library for barebones DSV parsing.

csv2geojson.auto(dsvString);

Automatically choose a delimiter to parse a dsv string with, and do it.

csv2geojson.toPolygon(gj);
csv2geojson.toLine(gj);

Given a GeoJSON file consisting of points, derive one consisting of a polygon or line that has the coordinates of those points, in the order given.

Using in webpages

The latest build will be at

https://npmcdn.com/csv2geojson@latest/csv2geojson.js

Open that path in a browser to be redirected to the lastest pinned version.

Looks for fields like /^Lat/i.

See Also

  • topojson supports joining data in CSV
  • gdal supports specific CSV structures to and from other data formats

This is what powers the CSV/TSV import of geojson.io.

changelog

5.1.2

  • Replace deprecated optimist with meow

5.1.1

  • Fix bug in --numeric-fields option

5.1.0

  • add --numeric-fields option

5.0.1

5.0.0

  • Updates dsv dependency to d3-dsv

4.0.0

3.8.0

  • --crs option in csv2geojson and in csv2geojson() to specify a specific coordinate reference system in output
  • build with npm run build instead of Makefile
  • update optimist and sexagesimal
  • exclude test/ and site/ from npm packages

3.7.0

  • --line option in csv2geojson binary now derives a line from a series of rows

3.6.1

  • Improved test coverage, fixes but with one-line input

3.6.0

  • Support stream input to the csv2geojson utility