Analyser les données sur les trajets en mer des manchots avec Python

Cette activité de lycée est basée sur le programme Argonautica.
Elle intègre de la programmation en langage Python avec le logiciel Jupyter.
Elle permet de visualiser le trajet de manchots royaux en mer et de le comprendre.
Activité proposée par Thierry Sira du lycée Lislet Geoffroy de Saint-Denis.

Présentation et objectifs

Argonautica est un projet éducatif utilisant des données satellites de localisation Argos, océanographiques et hydrologiques. On va ici utiliser les données concernant, entre autre les manchots royaux des TAAF.

Cette activité est basée sur une des fiches pédagogiques du site Argonautica (section Argonimaux). Elle a été adaptée afin d'intégrer de la programmation en langage Python.

Les Terres Australes et Antarctiques Françaises, abrégées par l'acronyme TAAF, sont situées dans l'hémisphère sud. Elles comprennent cinq districts très différents : l'archipel Crozet, les îles Kerguelen, les îles Éparses de l'océan Indien, les îles Saint-Paul et Nouvelle-Amsterdam et la terre Adélie. Ces îles montrent une faune et une flore particulière qui sont encore en cours d'étude par les scientifiques.

Les manchots royaux viennent sur la terre ferme pour pondre et élever leurs petits. Afin de les nourrir, ils peuvent parcourir des centaines de kilomètre afin de consommer des poissons, du krill ou des céphalopodes.

On cherche à déterminer le trajet suivi par les manchots et ce qui conditionne leurs déplacements.

Les objectifs méthodologiques visent à faire en sorte que les élèves s'approprient le code python et le modifie pour effectuer une action légèrement différente.

D’un point de vue technique, il y a 3 éléments clefs :

  • Traiter des données sous 2 formats (csv et Netcdf)
  • Savoir afficher une carte numérique avec un trajet à base de coordonnées GPS
  • Afficher les paramètres (quantité de chlorophylle, température, etc.) d’un milieu sur une carte numérique

Les compétences suivantes du CRCN sont ici travaillées

  • Gérer des données
  • Traiter des données
  • Programmer

Le déroulé de la séquence

Il s’agit d’une activité en lien avec la programmation en python (Voir les références pour apprendre à coder en python, mais cette activité peut se faire avec des connaissances minimes en python).

En termes de didactique, on utilise un fonctionnement que les élèves ont pu connaître en SNT. En effet, les élèves de seconde et de spécialité n’étant pas forcément des codeurs, c’est du pas à pas.

Ce que permet l’application Jupyter. L’objectif est de faire en sorte que les élèves comprennent le sens du code avec un exemple et se l’approprie en faisant une action légèrement différente. L’utilisation de Jupyter permet un travail hybride.

Il faut donc commencer par lancer la suite Anaconda puis l'application Jupyter Notebook (et pas Jupyter lab !).

Présentation du dossier élève

Cette application permet d'intégrer la totalité de l'activité (mise en contexte, code et édition du code, affichage des résultats du code, questions de réflexion et édition des réponses).

Le fichier Activite.ipynb du dossier élève contient donc toute l'activité.

Le dossier élève contient également :

  • Un dossier "Manchot" contenant les données des balises Argos des deux manchots étudiés ici (Pinocchio et Violoncelle)
  • Un dossier "Donnees" contenant les données satellite étudiées dans la suite de l'activité
  • Lien pour le téléchargement du dossier Élève
Note : le dossier Prof contient les mêmes fichiers en version corrigé - Lien pour le téléchargement du dossier Prof

Le dossier prof contient également un fichier "Activite_correction.html" permettant de visualiser la correction dans un navigateur internet.

Première étape : Afficher une carte

Un premier code est donné pour afficher un planisphère complet avec le module Cartopy (qui doit donc être installé, cf. plus bas pour les instructions d'installation).

Les élèves doivent ensuite créer leur code, en s'inspirant du code précédemment donné, pour afficher uniquement la carte affichant la zone des îles Kerguelen).

La stratégie la plus simple consiste à reprendre le code donné et à modifier la zone à afficher.

Deuxième étape : Afficher le trajet des manchots sur la carte

Là encore, un premier code est fourni pour lire les données de la balise d'un premier manchot. Les élèves doivent ensuite créer leur code pour lire les données concernant un deuxième manchot.

Ensuite ces données sont affichées sur la carte (avec le même travail en deux étapes : lire le code, puis l'adapter à un exemple proche).

On devrait alors obtenir cela :

Affichage des trajets des deux manchots

Troisième étape : Afficher des données satellite

En utilisant le module netCDF4, on peut lire les données satellites fournies dans le dossier correspondant. Ces données sont issues du site Copernicus Marine Data Store.

Avec la même approche, les élèves pourront afficher :

  • L'évolution de la concentration en chlorophylles en fonction du temps en un lieu donné
  • La répartition géographique de cette concentration
  • La répartition géographique des températures
  • La répartition géographique du niveau de la mer

Avec des informations complémentaires issues de site web, affichés également grâce à un code python, les élèves vont pouvoir essayer de comprendre le trajet des manchots étudiés.

En effet, les eaux froides et tourbillonnaires du « front polaire » austral favorisent le développement du phytoplancton et du krill, base des chaînes alimentaires océaniques. On y observe ainsi un développement important de la vie océanique. Les manchots royaux de l’île de la possession (archipel de Crozet) viennent dans cette zone de turbulences pêcher des poissons en accomplissant plusieurs dizaines de plongées par jour, avant de revenir sur leur île nourrir leur petit en régurgitant.

Installer les outils indispensables

Python est un langage informatique orienté objet facile à apprendre de par son approche. Très polyvalent, et déjà utilisé par nos élèves en mathématiques, en NSI et parfois en physique, il s'accompagne de très nombreux modules permettant de faire simplement des actions complexes. En l'occurrence, nous allons ici afficher sur une carte des données des balises Argos des manchots ainsi que d'autres données produites par des satellites d'observation.

Le code python est ici intégré à l'application Jupyter de la suite Anaconda. Ce module permet de travailler sur des activités intégrées qui incluent directement le code python.

Nous utiliserons, en plus, le module cartopy qui permet d'afficher des cartes et le module Netcdf4 qui permet de lire les fichiers au format netCDF des données brutes issues des satellites.

Installer Anaconda

Anaconda s'installe très simplement après avoir télécharger le logiciel sur le site officiel .

Le logiciel est en anglais, mais les quelques icônes nécessaires sont suffisamment visuelles pour ne poser aucun problème.

Le lancement de la suite Anaconda peut être long et ouvrir furtivement plusieurs fenêtre. Ne pas paniquer et attendre que la suite se lance normalement pour l'utiliser.

Installer les modules Cartopy et Netcdf4

Ces modules permettent de traiter respectivement l'affichage des cartes et le traitement des fiches de données satellites au format netCDF.

Pour les installer il faut lancer la suite Anaconda en mode administrateur.

Aller dans l'application CMD.exe prompt d'Anaconda. Il s'agit d'une invite de lignes de commande.

Il faut alors tapper les commandes suivantes, puis appuyer sur "y" pour valider le téléchargement et l'installation lorsque l'invite le demande.

  • Pour installer cartopy : conda install -c conda-forge cartopy
  • Pour installer netCDF : conda install -c conda-forge netcdf4

Si tout s'est bien déroulé, les lignes suivantes apparaissent à la fin du processus :

Preparing transaction: done

Verifying transaction: done

Executing transaction: done

Liens utiles

Téléchargement

Mise à jour : août 2023