Contexte

Vous souhaitez intégrer les données du SITG dans vos applications ou créer des cartes dynamiques ?

Voici quelques exemples de code HTML et Python qui vous montrent comment facilement rechercher, afficher des données du SITG et créer des cartes vectorielles dynamiques.

Exemple HTML (coté navigateur)

Script HTML qui permet de faire afficher une carte vectorielle qui contient les arrêts TPG de la ligne 14 à Genève, avec le nom de chaque arrêt.

Source : API ESRI du SITG https://sitg.ge.ch/donnees/tpg-arrets

Remarques: 

  • Lors de la requête GET, pour filtrer uniquement les arrêts de la ligne 14, nous utilisons l'attribut: " where ligne like '14' "
  • L'attribut 'f=geojson' permet d'obenir le flux au format geoJson

 

Génération automatique d'une carte vectorielle à l'aide d'un fichier HTML

Exemple Python (coté serveur)

Faire créer une carte vectorielle (ouput.html) qui affiche les communes et les arrêts de bus et tram TPG uniquement pour les communes de Meyrin et Bernex. Cet exemple démontre que l'on peut utiliser des fichiers ZIP contenant une source de donnée Excel ainsi que de réaliser des jointures spatiales basées sur les coordonnées géographiques.

Source des données :

Bibliothèques Python utilisées : geopandas, folium, pandas, zipfile

 

Génératuin automatique d'une carte vectorielle à l'aide d'un script Python

 

Exemples de services REST

Le Système d'information du territoire à Genève (SITG) propose plusieurs services REST accessibles publiquement. Voici quelques exemples d'utilisation de ces services

Requête sur les adresses géoréférencées

Objectif : faire afficher les adresses uniquement pour les voies de type "Route"

https://app2.ge.ch/tergeoservices/rest/services/Hosted/CAD_ADRESSE/FeatureServer/0/query?where=tyvoie%3D%27Route%27&outFields=*&f=json

Paramètres : 

  • where tyvoie='Route'
  • outFields=*   # tous les champs
  • f=json      # format Json, sinon HTML, PDF ou geoJson
     

Voir le résultat

 Requête sur les établissements scolaires

Objectif : faire afficher le nom des écoles primaires situées sur la commune de Vernier

https://app2.ge.ch/tergeoservices/rest/services/Hosted/DIP_ECOLE_PRIMAIRE_BATIMENT/FeatureServer/0/query?where=commune%3D%27Vernier%27&outFields=nom_ecole&f=json

Paramètres : 

  • where commune='Vernier'
  • outFields=nom_ecole
  • f=json      # format Json, sinon HTML, PDF ou geoJson

Voir le résultat

Ressources complémentaires

Catalogue des données du SITG : https://ge.ch/sitg/sitg_catalog

Documentation de l'API REST d'ArcGIS Server : https://developers.arcgis.com/rest/services-reference/