Les arbres de la ville de Saint-Étienne
Cette page a pour vocation de présenter :
- Les arbres isolés de la ville de Saint-Étienne ;
- les opérations effectuées pour préparer l'import ;
- les imports effectués.
Contexte
Voir: https://defuneste.github.io/Albiziapp-blog/about/
Présentation des données :
Le jeu de données (Les informations sont libres de droit) a été fourni par le services des espaces verts via le service informatique de la ville sous un WFS. Les données ont été analysées et préparées avec R. Le scripte (R Markdown) est disponible ici.
Le fichier comporte 25984 point et une bonne part des infos sont dans le Champ DESCRIPTION qui est une chaîne de caractères . L'EPSG est 3946; il faut donc le changer avant l'import.
Voila un exemple d'une des modalité de la variable/champs DESCRIPTION :
"Acer campestre L. 'Elsrijk' Emplacement Occupé Nom commun : Erable champêtre 'Elsrijk'"
Elle contient une information sur le genre, l’espèce, une éventuelle variété/cultivar, une information sur l’emplacement (qui peut être Vide ou Occupé) et un nom vernaculaire.
Mise en forme des données :
Je ne compte pas rentrer dans les détails du code car il est dans le github.
Pour les genre et espèces :
Ma démarche a été :
- extraire des mots (ici en utilisant R et stringr),
- les lister et de vérifier les cas problématiques,
- produire des graphs de base pour vérifier les opérations (étape pas indispensable, mais c'est toujours bien de faire une vérification visuelle)
- comparer avec le tableau du wiki,
- Créer les champs nécessaire à l'import.
Vérifier les cas problématiques :
Dans le cas du genre j'ai obtenu ces résultats étrange : "x" , "indéterminé" et "inconnu"
C'est important à noter car il me semble que ce sont des descripteurs qui ont leur sens dans une base de donnée "métier" de gestion des espaces vert mais moins dans OSM.
Le "x" correspond à des hybrides et est un cas particulier d’écriture d'hybride. J'ai opté pour la suppression du "x" car dans les cas de cette base il sont suivit d'un nom d’espèce valide.
Indéterminé semblait correspondre à une absence d'arbre:
"Indéterminé Indéterminé Emplacement Vide Nom commun : Indéterminé"
Ils seront un jour plantés mais pour le moment je ne les ai pas pris en suivant la règle cartographié l’existant.
"inconnu" est similaire mais semble parfois pouvoir correspondre à des arbres sur photo aérienne. Je n'ai cependant pas gardé par précaution.
Dans le cas des espèces il y avait ces cas : "x", "sp.", "" et "inconnu" pouvant poser problème. Il faut préciser que j'ai considéré le genre comme le premier mot et l'espèce comme le couple premier mot et second. Le "x" correspond donc aux hybrides et il me faut donc prendre dans ces cas les trois premiers mots pour avoir le bon nom d'espèce.
"Sp." est à mon avis l'erreur la plus fréquente et on la retrouve dans les données OSM. Sp. signifie que l'on est pas sûr de l'espèce mais du genre. Cela n'a pas sa place dans une base de données qui prend les deux champs : on garde le genre dans "genus" et on ne remplie pas "species". C'est pareil pour "Inconnu" si l'espèce n'est pas connu autant, dans le cas de la structure que prend la base, ne pas le renseigner.
Comparer au Wiki :
Ici j'ai comparé les genres que j'avais avec ceux dans le wiki, j'ai eu principalement des genres bien réels mais pas encore présent dans le wiki, je les ai donc rajouté. Il y a un cas d'un genre "borderline" ("Macromeles") que je n'ai pas voulu rajouter dans le wiki mais laissé dans les données.
Création des champs pour OSM :
genus = le genre
spiecies = l'espèce
species:fr = nom vernaculaire (ici taxon:fr aurait aussi pu coller)
"ref:FR:Saint-Etienne:tree" = GID # ici c'est pour garder l'identifiant de la BD de Saint-Étienne
"source:name" = "Arbres d'alignement de la ville de Saint-Étienne" #source des données
denotation = "avenue" # ici c'est pour indiquer que ce sont des arbres d'alignements (on a des cas d'arbres de Parc, j’hésite à enlever ou de faire un filtre sur du land-use dans OSM pour "corriger")
leaf_type et Leaf_cycle via le tableau wiki mis à jours (et une jointure)
Puis on export en geo Json. Il ne remplie plus les champs vide par null donc on économise le parsing.