1.1.2 • Published 7 years ago

geojson2postgres v1.1.2

Weekly downloads
4
License
ISC
Repository
github
Last release
7 years ago

geojson2postgres

Copy a geojson file to PostgreSQL

This package supports both a command line interface as well as a programmable API.

Command Line

To install:

npm install -g geojson2postgres

To run:

geojson2postgres <filename> <args> | psql <db>

args:
  --create (-c): drop the database if it exists and recreate it
  --file (-f) <filename>: the GeoJSON file to be processed
  --tablename (-t) <tablename>: the name of the SQL table to be created (defaults to the name of the GeoJSON file)

API

copyToDB(tablename, file, schema, emitRow)

Process a GeoJSON file and generate a PostgreSQL script to insert each feature into a database

Kind: global function

ParamTypeDescription
tablenamestringName of table to create in the database (table should not already exist)
filestringName of the input GeoJSON file
schemaArray.<{name: string, type: string}>The schema of the table to be created. name is a column name and type is the type for that column
emitRowfunctionA function that takes in a single GeoJSON feature and returns an object where the keys are column names defined in the schema and the values are the values to be entered into each column

Example

copyToDB({
	tablename : 'columbian_municipalities',
	file : process.argv[2],
	schema : [{name : 'department', type : 'text'}, {name : 'municipality', type : 'text'}],
	emitRow : function(feature){
		return {
			municipality : feature.properties.NOMBRE_MPI,
			department : feature.properties.NOMBRE_DPT
		};
	},
})

Where the json file looks something like:

{
  "type": "FeatureCollection",
  "crs": {
    "type": "name",
    "properties": {
      "name": "urn:ogc:def:crs:OGC:1.3:CRS84"
    }
  },
  "features": [
    {
      "type": "Feature",
      "properties": {
        "AREA": 7516765785.590000,
        "PERIMETER": 475636.130236,
        "WCOLGEN02_": 2,
        "WCOLGEN021": 566,
        "DPTO": "44",
        "NOMBRE_DPT": "LA GUAJIRA",
        "MPIO": "847",
        "NOMBRE_MPI": "URIBIA",
        "NOMBRE_CAB": "URIBIA",
        "CLASEMUN": "CM",
        "MPIOS": "44847",
        "ZONA": "ZONA06",
        "OF_REG": "DABAR",
        "REG_ZONAS": "DABARZONA06",
        "HECTARES": 751676.579000
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -71.416042649212045,
              11.786808467660752
            ],
    		...
            [
              -71.416042649212045,
              11.786808467660752
            ]
          ]
        ]
      }
    }
  ]
}
1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.6

7 years ago

1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago