[go: up one dir, main page]

GeoJSON

Sous ensemble de JSON, spécialisé dans les informations géospatiales.

GeoJSON (de l'anglais Geographic JSON, signifiant littéralement JSON géographique) est un format ouvert d'encodage d'ensemble de données géospatiales simples utilisant la norme JSON (JavaScript Object Notation).

GeoJSON
Caractéristiques
Extension
.json, .geojson
Type MIME
application/json
PUID
Signature
7B (hexa)Voir et modifier les données sur Wikidata
Développé par
Type de format
Informations géographiques
Basé sur
Norme
RFC 7946[1]
Site web

Il permet de décrire des données de type point, ligne, chaîne de caractères, polygone, ainsi que des ensembles et sous-ensembles de ces types de données et d'y ajouter des attributs d'information qui ne sont pas spatiales.

Le format GeoJSON, contrairement à la majorité des standards de systèmes d'informations géographiques, n'est pas écrit par l'Open Geospatial Consortium (OGC), mais par un groupe de travail de développeurs au travers d'internet.

Ce format est notamment utilisé par :

Attention toutefois, en fonction de certaines implémentations, les coordonnées peuvent être dans un ordre différent. Exemple:

  • Norme GeoJSON : [longitude, latitude]
  • Leaflet : [latitude, longitude]

Exemples

modifier

Fichier au format GeoJSON

modifier
{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "Point",
                "coordinates": [102.0, 0.5]
            },
            "properties": {
                "prop0": "value0"
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": "LineString",
                "coordinates": [
                    [102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]
                ]
            },
            "properties": {
                "prop0": "value0",
                "prop1": 0.0
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": "Polygon",
                "coordinates": [
                    [
                        [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
                        [100.0, 1.0], [100.0, 0.0]
                    ]
                ]
            },
            "properties": {
                "prop0": "value0",
                "prop1": { "this": "that" }
            }
        }
    ]
}

Objets géométriques

modifier
Objets primitifs
Type Exemples
Point  
{
    "type": "Point", 
    "coordinates": [30, 10]
}
Segments  
{
    "type": "LineString", 
    "coordinates": [
        [30, 10], [10, 30], [40, 40]
    ]
}
Polygones  
{
    "type": "Polygon", 
    "coordinates": [
        [
            [30, 10], [40, 40], [20, 40], [10, 20], [30, 10]
        ]
    ]
}
 
{
    "type": "Polygon", 
    "coordinates": [
        [
            [35, 10], [45, 45], [15, 40], [10, 20], [35, 10]
        ], 
        [
            [20, 30], [35, 35], [30, 20], [20, 30]
        ]
    ]
}
Ensembles géométriques
Type Exemples
Ensemble de points  
{
    "type": "MultiPoint", 
    "coordinates": [
        [10, 40], [40, 30], [20, 20], [30, 10]
    ]
}
Lignes brisées  
{
    "type": "MultiLineString", 
    "coordinates": [
        [
            [10, 10], [20, 20], [10, 40]
        ], 
        [
            [40, 40], [30, 30], [40, 20], [30, 10]
        ]
    ]
}
Ensemble de polygones  
{
    "type": "MultiPolygon", 
    "coordinates": [
        [
            [
                [30, 20], [45, 40], [10, 40], [30, 20]
            ]
        ], 
        [
            [
                [15, 5], [40, 10], [10, 20], [5, 10], [15, 5]
            ]
        ]
    ]
}
 
{
    "type": "MultiPolygon", 
    "coordinates": [
        [
            [
                [40, 40], [20, 45], [45, 30], [40, 40]
            ]
        ], 
        [
            [
                [20, 35], [10, 30], [10, 10], [30, 5], [45, 20], [20, 35]
            ], 
            [
                [30, 20], [20, 15], [20, 25], [30, 20]
            ]
        ]
    ]
}


Notes et références

modifier
  1. (en) « The GeoJSON Format », Request for comments no 7946,
  2. (en) Leaflet 0.6 released, Code Sprint in DC with MapBox sur le site de Leaflet

Voir aussi

modifier
  • TopoJSON, une extension de GeoJSON utilisant les informations topologiques, afin de réduire les doublons et ainsi de réduire la taille tout en améliorant potentiellement la vitesse de rendu.
  • Shapefile, autre format d'informations géographiques ouvert.

Lien externe

modifier
geojson.org, site officiel.
Wiki de TopoJSON