Tracer un graphique avec Python

  • Post last modified:2 novembre 2022
  • Temps de lecture :7 min de lecture
  • Post category:Lycée

Python est un langage de programmation très populaire dans les écoles et les entreprises. Il doit sa popularité à une syntaxe claire et un vocabulaire intuitif qui permettent une initiation et un apprentissage aisés de la programmation.

Capacités travaillées

Rappel sur l'environnement Python

Si vous ne connaissez pas l’utilité de la fonction print() ou si vous ne savez pas faire la distinction entre nombres, listes et chaines de caractères sur python, je vous conseille de regarder la page web suivante (les bases pour comprendre la programmation avec python) pour vous familiariser avec la logique de Python.
Affichage du logiciel Edupython en mettant en évidence la zone "code" et la zone "console"
Fenêtre du logiciel Edupython avec la "zone code" et la "zone console"

Rappel de ce que l'on peut écrire dans la zone "Script" ou "Code"

Les commentaires

  • # Texte : aide à comprendre les lignes du programme pour un tierce développeur.

Les bibliothèques / libriaires

Les boites à outils de Python :

  • numpy (pour les calculs mathématiques)
  • matplotlib (pour les graphiques) …

Les fonctions

  • print (« Texte ») : permet d’afficher du texte dans la console
  • input (« Texte ») : permet de rentrer via la console une variable que l’utilisateur a choisie.

Les variables

Zone de la mémoire de l’ordinateur dans laquelle une valeur est stockée.

Tracer un graphique avec python

Le but de ce travail est de tracer un graphique ( = ensemble de points définis par des coordonnées (x,y) ) avec python. Maxime a relevé les positions d’une balle envoyée en l’air à l’aide du logiciel LatisPro et a consigné les mesures dans le tableau suivant :

Tableau de mesure d'une balle envoyée en l'air avec ses coordonnées en x, y et t.

  • Lire le code ci-dessous puis copier-coller le dans la zone « code » de votre logiciel python.
  • Exécuter-le.
# Importation de la bibliothèque qui gère les graphiques

import matplotlib.pyplot as plt


# Déclaration des variables x, y et t
# On range les coordonnées dans une liste entre crochets [ ]
# On remarque que les nombres décimaux sont écrits avec un point et non une virgule

x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]


# Utilisation des outils de la bibliothèque "Mathplotlib" pour tracer le graphique

plt.plot ( x , y , "ro" )
plt.axis ( [ 0 , 10 , 0 , 5 ] )
plt.show ()

Exercice à réaliser :

Pour répondre aux questions ci-dessous, il sera nécessaire de changer le code en supprimant des données, des lignes entières puis d’exécuter pour constater ou non des changements. 

  1. A quoi sert plt.plot ?
  2. A quoi sert plt.axis ?
  3. A quoi sert ro ? Essayer r tout seul. Essayer rx. Essayer bx.
  4. A l’aide du fichier Tutoriel Python – Matplotlib Graphiques.pdf, ajouter un titre à votre graphique, nommer les 2 axes et ajouter une grille à votre graphique. 
  5. Tracer maintenant l’évolution des coordonnées en abscisse x en fonction du temps t

La fonction append( )

Utilité de la fonction append()

Copier le code ci-dessous, exécuter-le puis comprendre à quoi sert la fonction append().

# Reprenons nos listes du début : 
# Déclaration des variables x, y et t
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]

x.append(56)

print (x)

Exercice à réaliser :

  • Rajouter à l’aide de la fonction append() les coordonnées d’un nouveau point (9,5 ; -1) nombre de votre choix aux listes x, y et t puis afficher toutes les listes dans la console.

Rajoutons une valeur issue d'un calcul

  • Copier le code ci-dessous, exécuter-le puis comprenez-le.
# Reprenons nos listes du début : 
# Déclaration des variables x, y et t
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]

xi = 5.7 * 1.6

x.append(xi)

print (x)

Exercice à réaliser : 

  • Dans la liste y, rajouter un nombre issu du calcul ( 15,5 × 8 ) et afficher la liste dans la console.
  • Dans la liste t, rajouter un nombre issu du calcul ( 78 / 3 ) et afficher la liste dans la console.

Comment automatiser le remplissage d'une liste ?

Nous pouvons automatiser l’insertion dans une liste de différentes valeurs issues d’un calcul à l’aide d’une boucle while (= tant que), par exemple.

  • Copier le code ci-dessous, exécuter-le puis comprenez-le.
# Déclaration des variables x, y et t
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]


i = 0   # On commence la boucle à 0.

# On dit aussi : on incrémente à partir de 0 pour la boucle while (=tant que)

# Boucle while :

while i<10:         # Tant que i est strictement inférieur à 10
    xi = 6 * i      # Notre formule
    x.append(xi)    # On remplit la liste x avec le résulat du calcul
    i = i + 1       # On avance de 1 notre incrémentation.
                    # La boucle se relance 

# Quand i atteint 10, la boucle se termine et passe aux lignes de code suivantes : 

print (x)

Exercice à réaliser :

  • Dans la liste y, rajouter un nombre issu du calcul ( 15,5 × i ) et afficher la liste dans la console. 
  • Dans la liste t, rajouter un nombre issu du calcul  ( i / 3 ) et afficher la liste dans la console
Pour aller plus loin

La page web suivante vous guide pas-à-pas sur une série d’exercices afin de maitriser d’autres fonctions.

Source – monlyceenumerique.fr

Laisser un commentaire