Plan
1. Modules ducalcul scientifique
2. Module NumPy
a) Fonctions mathématiques
b) Vecteurs
c) matrices
3. Module Matplotlib
a) Graphique 2D
b) Graphique 3D
2
3.
3) Matplotlib
Références/ tutoriels:
1.Site officiel : https://matplotlib.org
2. Tutoriel du site w3schools sur Matplotlib
https://www.w3schools.com/python/matplotlib_histograms.asp
3
4.
3) Matplotlib :présentation
• Graphique 2D:
Représentation graphique (courbe …) en deux
dimensions: X « abscisse »,Y « ordonnée ».
4
• Graphique 3D:
Représentation graphique en trois dimensions: X
« abscisse »,Y « ordonnée », Z « cote»
5.
3) Matplotlib :présentation
Les graphiques 2D et 3D servent à la
• visualisation de données telles que
• des fonctions mathématiques (courbes, etc…),
• des données statistiques (histogrammes etc…)
• ...
• Très utile dans la rédaction de documents scientifiques de qualité.
• Matplotlib offre beaucoup de possibilités de représentations graphiques de données.
5
6.
3) Matplotlib :présentation
• Matplotlib est une bibliothèque de Python destinée à la visualisation de données
(i.e. graphiques 2D et 3D statiques, animés et interactives).
• Elle- se base sur les tableaux de la bibliothèque NumPy pour réaliser les graphiques.
• Les fonctions de création graphique sont contenues dans le sous-module « pyplot »
6
3.1.1) Matplotlib: créationde courbes
On utilise la fonction plot()
Procédure de création de graphique 2D:
1. créer un vecteur d'abscisse X
X = (x1; : : : ; xN ),
2. créer un vecteur d'ordonnéesY
Y = (y1; : : : ; yN )
3. plot(X,Y)
NB: X etY doivent avoir la même taille 9
9.
3.1.1) Matplotlib: créationde courbes
Paramètres de la fonction plot():
plot() prend en paramètres des vecteurs ou des matrices
1. plot(X,Y) où X etY sont des vecteurs:
• X (les abscisses) etY (les ordonnées)
2. plot(V) oùV est un vecteur:
• les valeurs du vecteurV définiront l’axe Y et leurs positions définiront l’axe X.
10
10.
3.1.1) Matplotlib: créationde courbes
Paramètres de la fonction plot():
3. Plot(A) où A est une matrice:
produit plusieurs courbes (une pour chaque colonne)
• les valeurs de chaque colonne définiront les éléments de l’axe Y, et leurs positions
définiront les éléments de l’axe X.
4. Plot(A,B) où A et B sont des matrices:
produit aussi plusieurs courbes (une pour chaque colonne)
• les valeurs de chaque colonne de la 1ère matrice définiront les éléments de l’axe X; et les
valeurs de chaque colonne de la 2ème matrice définiront l’axeY.
11
11.
3.1.1) Matplotlib: créationde courbes
• Exemple: traçons la courbe de la fonction f x = 𝑐𝑜𝑠(𝑥) où x comprend 30
éléments équidistants compris entre [0, 2π ].
12
12.
3.1.1) création decourbes : exercices
• Exercice 1:
Tracer la courbe de la fonction f x = sin(𝑥) dans l’intervalle [-2π, 2π] avec les pas
suivants : π/3 , π /12 et π /100
• Exercice 2:
Tracer la courbe de la fonction f x = 𝑥sin(1/𝑥) où x comprend 300 éléments
équidistants compris entre [- π /4 , π /4].
13
13.
3.1.2) Courbes :personnaliser l’apparence
• Options de la fonction plot()
plot (x, y, ’marqueur’)
’marqueur’ est une combinaison de
caractères spéciaux permettant de
spécifier la couleur , le style et le symbole
de la courbe.
14
y = sin(x) pour x = [-π ... π] avec un pas = π/12.
plot(x ,y , ' r:* ')
3.1.2) Courbes :personnaliser l’apparence
• Epaisseur des traits/symboles
plot (x, y, lineWidth = n)
Permet de choisir l’épaisseur
respectivement du trait et des symboles
par les options ’lineWidth’ et ’markersize’ .
16
y = sin(x) pour x = [-π ... π] avec un pas = π/12.
16.
3.1.2) Apparence descourbes: exercices
a) Dessiner les courbes des trois fonctions suivantes:
la fonction y1 = sin(𝑥) , y2 = sin(2𝑥) et y3 = sin(3𝑥)dans l’intervalle [0, 2π] pas: 0,05
b) Représenter
• y1 avec une ligne noire,
• y2 en utilisant une étoile bleue,
• et y3, avec des cercles rouges.
17
17.
3.1.3) Courbes: Habillage& Annotation
• grid() : ajoute des grilles dans les plans des axes.
• xlabel(’texte’) / ylabel(’texte’) / zlabel(’texte’)
ajoute un titre pour l’axe des abscisses x / l’axe des ordonnées y / pour l’axe z
• title(’titre de la figure’) : ajoute un texte en haut du graphique.
• legend() : crée une boîte de légende pour les courbes tracées.
18
3.1.3) Courbes: Habillage& Annotation
20
• Exercice:
Dessiner la fonction : f(x) = -2x3+x2-2x+4 pour x variant de [-4 .. 4], avec un pas de 0,5.
a) Donner un titre à la figure
b) Afficher la courbe en rouge
c) Afficher la grille
d) Afficher le texte ‘L’axe des abscisses’ sur l’axe X
e) Afficher le texte ‘L’axe des ordonnées’ sur l’axeY
20.
3.1.4) Plusieurs courbesdans la même figure
• Deux méthodes
1. Utiliser plusieurs plot()
2. ou un plot() avec plusieurs arguments
21
ou
21.
3.1.4) Plusieurs courbesdans la même figure
Exercice 1:
a) Dessiner dans une même figure, les trois fonctions suivantes:
la fonction y1 = 2𝑐𝑜𝑠𝑥 , y2 = 𝑐𝑜𝑠𝑥 et y3 = 1/2𝑐𝑜𝑠𝑥 dans l’intervalle [0, 2π]
• y1: couleur (bleue), style(tiret)
• y2: couleur (verte), style(trait continu)
• y3: couleur (rouge), style(point tiret)
b) Ajouter les légendes suivantes 2𝑐𝑜𝑠𝑥 , 𝑐𝑜𝑠𝑥 et 0.5*𝑐𝑜𝑠𝑥 respectivement à y1, y2 et y3
22
22.
3.1.4) Plusieurs courbesdans la même figure
Exercice 2:
a) tracer dans une même figure, les courbes représentant les fonctions y1 = 𝑠𝑖𝑛(𝑥2)
y2 = ln( 𝑥), où x comprend 30 éléments équidistants compris entre [0 , 2]
• sinus cardinal en trait rouge continu
• sinus amorti en pointillés couleur verte
b) Ajouter le texte ‘y= 𝑠𝑖𝑛(𝑥2) ’ à la position (1,0.8) pour décrire y1
c) Ajouter le texte ‘y= 𝑙𝑜𝑔(𝑠𝑞𝑟𝑡(𝑥)) ’ à la position (1, -0.1) pour décrire y2
d) Ajouter comme titre de la figure le texte ‘Fonctions sinus et logarithme’
e) Annoter l’axe X et l’axeY
23
23.
3.1.4) Plusieurs courbesdans la même figure
Exercice 3:
a) tracer dans une même figure, les courbes représentant les fonctions sinus cardinal
y1 = 𝑠𝑖𝑛𝑐(
𝑥
2
) et sinus amorti y2 =
𝑒
−
𝑥
10
3
sin(𝑥) , dans l’intervalle [-4π, 4π ] pas: π/10
• sinus cardinal en trait rouge continu
• sinus amorti en pointillés couleur verte
b) Ajouter le texte ‘sinus cardinal’ en haut de la courbe de la fonction « sinus cardinal »
c) Ajouter le texte ‘sinus amorti’ en haut de la courbe de la fonction « sinus amorti »
24
24.
3.1.5) Sous-figures
• Onutilise la fonction subplot()
Syntaxe : subplot( m, n, p)
Elle symbolise le découpage de la figure en
une matrice m lignes et n colonnes.
Le nombre p compris entre 1 et n*m désigne
le numéro de la sous-fenêtre où l’on veut
tracer sa courbe.
25