Accueil / Contact

Bienvenu sur :

logotop







Site d'initiation à l'algorithmique
LANGAGE PYTHON.
Conforme aux nouveaux programmes du lycée.


ESPACE LIBRE

LES GRAPHES DE FONCTIONS AVEC PYTHON


GENERALITES:
Pour tracer des courbes,il faut importer des bibliothèques spécifiques de Python qui sont généralement:
- matplotlib.pyplot
- numpy
Ces deux bibliothèques combinées dans un programme suffisent pour réaliser de belles courbes :
La bibliothèque numpy est utilisée pour le calcul matriciel avec une structure de tableau. On l'utilise pour les vecteurs et les matrices.
La bibliothèque matplotlib.pyplot sert à visualiser les tracés de points, de courbes, agir sur les axes et leurs légendes ou commentaires des graphiques.

Pour importer la bibilothèque numpy on utilise généralement la syntaxe suivante :
import numpy as np
Pour importer la bibilothèque matplotlib.pyplot on utilise généralement la syntaxe suivante :
import matplotlib.pyplot as plt
Différentes méthodes seront ensuites utilisées pour tracer des points, des courbes.

METHODES DE NUMPY ou MATPLOTLIB.PYPLOT

MATRICES ET METHODES AVEC NUMPY
EXEMPLES : INTERPRETATION
L1 = np.array ([3,8,9]) np.array( L )
création d'une matrice à 1 ligne et p colonnes si L est une liste à p éléments
Dans l'exemple on a crée une matrice à 1 ligne et 3 colonnes
3 est l'élément de la première ligne et de la première colonne
8 est l'élément de la première ligne et de la deuxième colonne
9 est l'élément de la première ligne et troisième colonne
L2 = np.array ([2,3,4] , [3,7,8]) np.array (L1,L2)
création d'une matrice à 2 lignes et p colonnes si L1 et L2 contiennent p éléments
Dans l'exemple on a crée une matrice 2 lignes et trois colonnes
L1 [0] = 3 L0] retourne le premier éléments d'une liste
L2 [ 2,3] = 8 L2 [i,j]
retourne l'élément de i ième ligne et j ième colonne
L2[0; :] = [2,3,4] L[ 0; :] retourne la ligne d'indice 0 la première ligne
L2 [ :; 1] = [3,7] L[:;1] retourne la colonne d'indice 1
L =np.zéros(4)=[0,0,0,0] np.zeros(n,m)retourne la matrice n X m avec que des zéros



CREATION DE POINTS:NUMPY ou MATPLOTLIB.PYPLOT :
EXEMPLES INTERPRETATION
plt.xlim(valeur1, valeur 2)
plt.ylim(valeur1,valeur2)
La courbe est tracée pour:
les valeurs limites de x et y
x=np.linspace(-10, 20, 50)
y= np.linspace(-5, 15, 50)
np.linspace (valeur1, valeur2 , N) la valeur de la variable varie entre la valeur1 et la valeur2 (inclus) , N représente le nombre de points à tracer
x=np.arange(-10, 20, 5)
y= np.arange( -5, 15, 5)
np.arange (valeur1, valeur2 , p) la valeur de la variable varie entre la valeur1 et la valeur2 ( exclus!) p représente le pas r
x=np.arange(-10, 20, 5)
y= x**2
ici, y est en fonction de x
x=[-2,3,10]
y= [ 5,3,9]
x est y sont des listes
trois points de coordonnées A(-2,5) ,B (3,3) C( 10,9) seront tracés et reliés dans l'ordre par une ligne brisée

FONCTIONS
GRILLE / TRACE DE COURBE INTERPRETATION
plt.plot (x,y)
plt.plot(x,y," couleur")
plt.plot(x,y ,label =" commentaire")
plt.legend()
Trace des points prédéfinis
On rajoute de la couleur (en anglais , black, red etc... à la courbe
On rajoute une légende
plt.grid() Affiche une grille
plt.axis([ xmin,xmax,ymin,ymax]) valeur minimales et maximales sur les axes
plt.title (" commentaire") Affiche un titre (commentaire) à la figure
plt.show() INDISPENSABLE pour montrer la courbe!

EXEMPLES:
Exemple 1:
Tracé d'une fonction affine dont on connaît les points " extrêmes" suivants :
A( -5,2) B(-1,3) C(4,-2)
En langage Python
import matplotlib.pyplot as plt
# création de listes #
x=[ -5,-1,4]
y=[2,3,-2]
# permet de tracer les points
dans l'ordre#
# ces points sont reliés automatiquement
par un segment #
plt.plot(x,y)
#création d'une grille #
plt.grid()
plt.show()

résultat:
L'échelle des axes est crée par défaut ,ainsi que les couleurs
 courbe de fonction affine
Exemple 2: Tracé de la fonction f(x)=cosx sur [0, 2pi]
En langage Python
import matplotlib.pyplot as plt
import numpy as np
# x varie sur [0,2pi],et 20 valeurs#
x = np.linspace(0,2 * np.pi, 20)
# on met la fonction f(x)= cos(x)#
#avec np.cos(x)#
y = np.cos(x)
plt.plot(x,y)
#légende des axes et de la figure#
plt.ylabel('axe des ordonnées')
plt.xlabel("axe des abscisses ")
plt.title("fonction cosinus")
plt.show()

résultat :
 courbe de fonction  cosinus
Exemple 3:
Tracé de courbes de deux fonctions définies par f(x)=cosx et g(x)=sin(x) sur [0, 2pi]

En langage Python
import matplotlib.pyplot as plt
import numpy as np
# x varie sur [0,2pi],et 20 valeurs#
x = np.linspace(0,2 * np.pi, 20)
# on met la fonction f(x)= sin(x)#
#avec np.sin(x)#
y1 = np.cos(x)
y2=np.sin(x)
plt.plot(x,y1,label="cos(x)")
plt.plot(x,y2,"r",label="sin(x)")
#légende des axes et de la figure#
plt.ylabel('axe des ordonnées')
plt.xlabel("axe des abscisses ")
plt.title("fonction cosinus et sinus")
plt.legend()
plt.show()

resultat:
 courbe de fonction  cosinus et sinus
Exemple 4:
Tracé d'une courbe par interpolation sur [0, 2pi]
En langage Python
# x varie sur [0,2pi],et 20 valeurs#
x = np.linspace(0,2 * np.pi, 20)
# on met la fonction f(x)= cos(x)#
#avec np.cos(x)#
y = np.cos(x)
yp = None
#tracer de 50 valeurs intermédiaires#
xi = np.linspace(x[0], x[-1], 50)
#interpolation #
yi = np.interp(xi, x, y, yp)
#création des axes,les points #
#intermédiaires#
# sont ronds et oranges #
fig, ax = plt.subplots()
ax.plot(x, y, 'r', xi, yi, 'k:.')
#légende des axes#
plt.ylabel('axe desordonnés')
plt.xlabel("axe des abcisses ")
plt.title ("interpolation de la fonction cosx")
plt.show()

résultat:
 fonction cosinus
FONCTION A DEUX VARIABLES
Exemple:Tracé d'une Gaussienne
En langage Python
import pylab as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
sigma=1
fig = plt.figure()
ax = Axes3D(fig)
x=np.arange(-1,2,0.25)
y=np.arange(-1,2,0.25)
x,y=np.meshgrid(x,y)
z=(1/(2*3.14*sigma**2))*
np.exp(-(x**2+y**2)/(2*(sigma**2)))
ax.plot_surface(x,y,z,cmap='hot')
plt.show()
résultat:
 courbe de la  fonction de Gauss
logotop