Comment créer une carte personnalisée pour repérer des tortues marines ?
Téléchargez le PDF
Téléchargez le PDF
90 min.
Sciences numériques et technologie
Seconde générale et technologique
Cette séance a pour objectif d’apprendre à créer soi-même une carte numérique à l’aide d’un langage de programmation Python.
Elle s’appuie, pour cela, sur la ressource du projet Mission Océan, « Géolocalisons les tortues marines ».
Les élèves vont utiliser les coordonnées géographiques récupérées dans la première partie de la ressource numérique « Géolocalisons les tortues marines » pour reproduire l’environnement de l’animation et créer sa propre carte numérique à l’aide d’un programme Python. Ils vont utiliser les cartes proposées par Open Street Map et le langage Python afin de générer des cartes personnalisées. Plus exactement, ils utiliseront une bibliothèque Python nommée Folium. Une bibliothèque Python permet de rajouter des fonctionnalités au langage de base. Folium va donc leur permettre de créer leur propre carte à partir des cartes proposées par Open Street Map.
Créez un dossier et le nommer « Cartographie des tortues marines ».
Dans un environnement de développement pour Python, saisissez le programme ci-dessous en indiquant en degré décimal la latitude et la longitude permettant d’afficher l’Ile Europa :
import folium
carte = folium.Map(location=[latitude à saisir en DD, longitude à saisir en DD])
carte.save(‘maCarte1.html’)
Le fichier devra être enregistré dans le répertoire créé.
À quel point cardinal correspond votre longitude et latitude ? Est/Ouest ? Nord/Sud ?
Si votre latitude est négative, alors il s’agit du Sud. Si votre longitude est négative, alors il s’agit de l’Ouest.
L’enseignant vérifie que les élèves parviennent à afficher la carte numérique à partir du programme Python. Un point de vigilance doit être accordé aux différentes méthodes d’affichage des coordonnées géographiques. L’enseignant peut demander à l’élève d’utiliser le convertisseur fourni dans l’animation. Il explique la notion de cardinalité pour permettre le remplissage correct du programme.
Voici le résultat attendu :
import folium
carte = folium.Map(location=[-22.367665196, 40.357998568])
carte.save(‘maCarte1.html’)
L’objectif est ici d’améliorer la présentation de la carte. L’élève va ainsi proposer un niveau de zoom adapté pour afficher la carte. Il va ensuite faire apparaître un marqueur pour repérer sur la carte la position de la tortue. Enfin, il va ajouter un « popup » pour nommer le marqueur ajouté.
Afin d’améliorer la présentation de la carte, il est possible d’obtenir un niveau de zoom différent en ajoutant un paramètre « zoom_start ».
La valeur par défaut est de 10. Testez l’effet du zoom sur l’affichage et proposez une valeur permettant une visualisation adaptée de l’Ile Europa.
import folium
carte = folium.Map(location=[latitude à saisir en DD, longitude à saisir en DD], zoom_start= valeur à définir)
carte.save(‘maCarte2.html’)
Afin de vraiment personnaliser la carte, il est possible d’ajouter des marqueurs. Un marqueur sera simplement défini par ses coordonnées (latitude et longitude).
Saisissez et testez le programme ci-dessous :
import folium carte = folium.Map(location=[ latitude à saisir en DD, longitude à saisir en DD],zoom_start= valeur à définir)
folium.Marker([latitude à saisir en DD, longitude à saisir en DD]).add_to(carte)
carte.save(‘maCarte3.html’)
Il est possible d’associer une information à un marqueur en ajoutant le paramètre « popup ». Saisissez et testez le programme ci-dessous :
import folium
carte = folium.Map(location=[ latitude à saisir en DD, longitude à saisir en DD],zoom_start= valeur à définir)
folium.Marker([latitude à saisir en DD, longitude à saisir en DD],popup= »Nom de la tortue »).add_to(carte)
carte.save(‘maCarte4.html’)
Il suffit de cliquer sur le marqueur pour que l’information définie par le paramètre « popup » apparaisse à l’écran (ici en cliquant sur le marqueur nous verrons apparaître « Nom de la tortue » ).
Il est possible d’ajouter plusieurs marqueurs sur une même carte, il suffira d’ajouter autant de lignes « folium.Marker([latitude, longitude]).add_to(carte) » que de marqueurs désirés.
Il sera alors possible de repérer également la position des stations de réception ainsi que les positions des différentes tortues présentes dans l’animation.
Cela permettra de gérer l’hétérogénéité du groupe et donnera au plus rapide l’occasion d’aboutir à une carte plus complète.
import folium
carte = folium.Map(location=[-22.367665196, 40.357998568],zoom_start=13)
folium.Marker([-22.367665196 , 40.357998568],popup= »Tortue »).add_to(carte)
carte.save(‘maCarte4.html’)