How do I import GeoJSON files for use in Google Earth Engine Code Editor?

Douglas Haubert picture Douglas Haubert · Oct 11, 2017 · Viewed 8.3k times · Source

I have generated some points of interest with my database with SQL to geoJSON.

geojson:

    {
    "FeatureCollection" : [
        {
            "geometry" : {
                "coordinates" : [
                    -45.927083,
                    -12.260889
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "626.46"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.916500,
                    -12.255944
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "565.04"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.949417,
                    -12.270361
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "631.47"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.958833,
                    -12.277361
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "591.85"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.942944,
                    -12.249889
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "644.67"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.930917,
                    -12.243611
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "644.67"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.871917,
                    -12.197139
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.866861,
                    -12.206417
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.967389,
                    -12.261889
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "592.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.973500,
                    -12.250639
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "592.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.962944,
                    -12.245444
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "621.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.952667,
                    -12.239778
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "592.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.931639,
                    -12.228528
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.908694,
                    -12.247472
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "557.20"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.918667,
                    -12.239139
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "644.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.897028,
                    -12.246000
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "557.20"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.906417,
                    -12.230472
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "64.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.895750,
                    -12.225028
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "644.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.927111,
                    -12.213750
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "564.90"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.917639,
                    -12.208750
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "564.90"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.897833,
                    -12.198444
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "584.00"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.881583,
                    -12.202233
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.876833,
                    -12.235306
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.867278,
                    -12.230306
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.856806,
                    -12.224889
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.861806,
                    -12.215611
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.887833,
                    -12.192806
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "12.60"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.877639,
                    -12.187917
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "564.90"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.941889,
                    -12.234611
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "644.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.887111,
                    -12.239889
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "644.50"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.907944,
                    -12.203361
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "591.70"
            },
            "type" : "Feature"
        },
        {
            "geometry" : {
                "coordinates" : [
                    -45.892722,
                    -12.208028
                ],
                "type" : "Point"
            },
            "properties" : {
                "grower" : "foo",
                "name" : "bar",
                "radius" : "574.60"
            },
            "type" : "Feature"
        }
    ]
}

I would like to import this geojson to my code editor on Google Earth Engine. Looking in the docs (assets manager), GEE accepts assets as raster images, shapefiles (.shp, shx, dbf, prj).

Also, I found the import to feature collection via fusion tables, but it still needs shapefiles.

I have found some geojson to shapefile conversors, though I need a way to directly import my geojson to a feature collection on GEE. Is that possible?

Answer

Adam Erickson picture Adam Erickson · Apr 27, 2018

You can also import GeoJSON geometry objects directly using, for example, this format for a MultiPolygon:

feature_geometry =
{
    'type': 'MultiPolygon',
    'coordinates': [[[
        [-120, 35],
        [-120.001, 35],
        [-120.001, 35.001],
        [-120, 35.001],
        [-120, 35]
    ]]]
}

That is identical to the GeoJSON specification (source):

{
   "type": "MultiPolygon",
   "coordinates": [
       [
           [ [102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0] ]
       ],
       [
           [ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] ],
           [ [100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2] ]
       ]
   ]
}

Of course, you can also read this data in from a GeoJSON file:

import json
data = json.loads(geojson_file)

For a nice simple wrapper, there is the pygeoj library, but JSON data is handled well natively in Python and of course in JS.