Skip to content

Geojson points

image image image

Draw GeoJSON points

Draw points from a GeoJSON collection to a map.

This source code of this example is adapted from the MapLibre GL JS example - Draw GeoJSON points.

Uncomment the following line to install leafmap if needed.

1
# %pip install "leafmap[maplibre]"
1
import leafmap.maplibregl as leafmap
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
m = leafmap.Map(center=[0, 0], zoom=1, style="positron")
image = "https://maplibre.org/maplibre-gl-js/docs/assets/osgeo-logo.png"
m.add_image("custom-marker", image)
source = {
    "type": "geojson",
    "data": {
        "type": "FeatureCollection",
        "features": [
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [100.4933, 13.7551]},
                "properties": {"year": "2004"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [6.6523, 46.5535]},
                "properties": {"year": "2006"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [-123.3596, 48.4268]},
                "properties": {"year": "2007"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [18.4264, -33.9224]},
                "properties": {"year": "2008"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [151.195, -33.8552]},
                "properties": {"year": "2009"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [2.1404, 41.3925]},
                "properties": {"year": "2010"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [-104.8548, 39.7644]},
                "properties": {"year": "2011"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [-1.1665, 52.9539]},
                "properties": {"year": "2013"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [-122.6544, 45.5428]},
                "properties": {"year": "2014"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [126.974, 37.5651]},
                "properties": {"year": "2015"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [7.1112, 50.7255]},
                "properties": {"year": "2016"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [-71.0314, 42.3539]},
                "properties": {"year": "2017"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [39.2794, -6.8173]},
                "properties": {"year": "2018"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [26.0961, 44.4379]},
                "properties": {"year": "2019"},
            },
            {
                "type": "Feature",
                "geometry": {"type": "Point", "coordinates": [-114.0879, 51.0279]},
                "properties": {"year": "2020"},
            },
        ],
    },
}

m.add_source("conferences", source)
layer = {
    "id": "conferences",
    "type": "symbol",
    "source": "conferences",
    "layout": {
        "icon-image": "custom-marker",
        "text-field": ["get", "year"],
        "text-font": ["Open Sans Semibold", "Arial Unicode MS Bold"],
        "text-offset": [0, 1.25],
        "text-anchor": "top",
    },
}

m.add_layer(layer)
m