Récupérer les données d'un tableur et les afficher

Il arrive que l'on possède des données dans un tableur avec des coordonnées (lat, long ou adresse) et qu'il soit intéressant de les rendre visible sur une carte.
Umap nous permet d'importer des données sur un calque.Pour ce faire, il faudra :
  • qu'elles soient géocodées
  • qu'elles soient fournies dans un format CSV

Créer le tableur

Pour importer des données d'un tableur dans Umap, il faut le "travailler" un peu pour qu'il présente les données correctement.
Vous pouvez utiliser le programme que vous souhaitez pour créer votre tableau.Toutefois, il faudra que ce programme puisse exporter en CSV (séparation par virgule).
De même, vous devrez veiller à ce que vos noms de colonnes ne possèdent pas d'accents, ni d'espace. Nous verrons plus loin qu'umap est très strict dans le respect des majuscules/minuscules.

Votre tableau devra contenir au minimum
  • les informations de géolocalisation
    • soit une colonne avec l'adresse entière au format "nomderue numéro codepostal localité "
    • soit plusieurs colonnes avec ces infos séparées
    • soit deux colonnes nommées Latitude et Longitude avec des données de type (50.6530959)
  • toutes les autres infos souhaitées
    • attention, si vous souhaitez faire apparaître une image, il faut que votre colonne contienne l'adresse url de l'image (elle doit donc être déjà présente sur le web)

Astuce : si vous n'avez pas les coordonnées exactes des points à importer (point dans un bois), donnez une adresse approximative proche et faites le géocodage sur cette adresse "temporaire". Une fois importée, il vous sera facile de déplacer les points "mal géocodés" au bon endroit (en glissant-déplaçant le point concerné en mode édition)

Si vous avez déjà les coordonnées Latitude, longitude, il n'es pas nécessaire de géocoder votre tableau (c'est fait ;-), passez au point suivant.

Si les données de votre tableau ne sont pas géocodées, il faut le faire avant de passer à l'importation.
Il existe plusieurs moyens de géocoder un tableau avec adresse.
J'utilise le service feuille de calcul de Google (faute de mieux mais il est vrai que c'est simple et efficace)
Au sein de cette feuille de calcul, vous pouvez copier-coller vos données (ou créer directement votre tableau dans ce service) et activer ensuite le module complémentaire nommé Geocode by Awesome table (s'il n'est pas présent, vous pouvez l'installer gratuitement via l'onglet modules complémentaires)

Ce service va analyser votre tableau et vous demander dans quelle colonne (et si plusieurs dans lesquelles) se trouvent les données "adresse" à géocoder.
Une fois que vous avez répondu à ses questions, le système géocode chaque ligne en créant une colonne Latitude et Longitude et en y déposant les coordonnées calculées.
Si les données "adresse" étaient éclatées en plusieurs colonnes,le système les aura au préalable rassemblées dans une colonne unique nommée Full Address.

Upload file Geocodage.png

Vous pouvez si vous le souhaitez, supprimer cette colonne avant l'export de vos données en CSV (ça évite d'avoir deux fois les données adresses dans son fichier).
Vous pourrez aussi le faire après l'importation dans umap si nécessaire.

Il reste maintenant à exporter vos données au format CSV via l'onglet fichier/télécharger au format/ CSV

Vous trouverez en suivant ce lien une feuille de calcul google à utiliser pour vos géocodages. Le plus simple est de faire une copie de celle-ci pour vos usages perso via fichier/créer une copie.

Importer les données

  • Rendez-vous sur votre carte Umap et passez en mode édition.

  • Cliquez sur le bouton d'importation 'rond blanc avec flèche vers le haut).

  • Choisissez votre fichier CSV sur votre PC via le bouton parcourir

  • Placez Choisir le format des données pour l'import sur CSV

  • Choisissez le calque dans lequel importer les données

  • Vous pouvez décider d'écraser les données existantes avec les données importées. Ceci peut-être intéressant quand on veut maintenir "à jour" sa carte en travaillant au quotidien sur son tableau plutôt que via umap (c'est parfois plus rapide ou plus simple pour vos contributeurs de remplir un tableur google partagé).

  • Clquez sur importer : les données apparaissent sur la carte avec le style par défaut du calque.

Jouer avec la "table d'attribut"

Lorsque l'on importe des données en provenance d'un tableur ou d'osm, une "table d'attributs" est créé.
Vous pouvez en voir le contenu en passant en mode édition et en cliquant sur l'icône calque (pile d'assiettes).
Ensuite cliquez sur le petit tableau en regard du calque concerné.
Une fenêtre s'ouvre et vous montrer les données importées sous forme de tableau. Chaque colonne est une clé : chaque ligne une valeur.
Vous pouvez modifer le contenu de ce tableau (supprimer des colonnes, modifier les noms, le contenu, ajouter des colonnes...).

Upload file table-attributs.png

Afficher les données dans l'infobulle de manière sympa

Sans démarche particulière, les données importées ne sont pas très visibles lorsque l'utilisateur clique sur un marqueur de la carte (le plus souvent on verra le nom du marqueur).

Vous pouvez rendre visible l'ensemble des données liées à un point de plusieurs façons.
  • via la vue tableau que l'on active dans les options d'interaction du calque / Gabarit du contenu de la popup / tableau
    • avantage : c'est très simple à activer
    • désavantage : vous n'avez pas le choix : toutes les données (colonnes) sont présentées.


  • en travaillant le design de l'infobulle que l'on active dans les options d'interaction du calque / Gabarit du contenu de la popup / par défaut et on indique en-dessous le design du popup
    • avantage : on montre ce qu'on veut et dans le format que l'on veut
    • désavantage : la moindre faute de frappe et la donnée n'est pas affichée

L'ajout dans un calque avec données importées


Lorsque vous permettez la contribution sur votre carte, tout ajout réalisé dans le calque avec données importées invitera l'utilisateur à remplir l'ensemble du tableau via un "formulaire" qui s'ouvrira sur la droite. Si les données ont été importées d'Osm, les clés utilisées dans Osm seront proposées.

En travaillant votre table d'attributs, vous pouvez donc "orienter" les données à récolter chez vos contributeurs. Ceci pourra se faire sur n'importe quel calque SAUF les calques créés à partir d'une requête overpass.

Toutefois, pour la récolte des images en lien avec un ajout, la démarche ne reste pas évidente puisque le contributeur devra déposer une adresse url et non pas l'image en elle-même ;-(