Matplotlib: graphe 2D

From Wiki Cours
Jump to navigation Jump to search

<--Sommaire

Création d'un graphe 2D

On utilise la bibliothèque Pylab de matplotlib

from pylab import *

f = lambda x: sin(x*pi)
t = [ 0.01*i for i in range(201) ]
s = map(f,t)
plot(t, s)

xlabel('temps (s)')
ylabel('Tension (mV)')
title('Signal sinusoidal')
grid(True)
show()

Dont voici le résultat

Tension.png

Il est en général plus simple de générer les tableaux avec la classe array qui est importée par pylab

from pylab import *

t = np.arange(0.0, 2.01, 0.01)  # numpy importe sous le nom np
s = sin(pi*t)*exp(-t)
plot(t, s)

xlabel('temps (s)')
ylabel('Tension (mV)')
title('Signal sinusoidal')
grid(True)
show()

On notera que les fonctions linspace() et logspace() de numpy permettent de générer un nombre de points fixé dans un intervalle donné et répartis soit linéairement soit logarithmiquement.

Rappelons que pour les utilisateurs d'IPython, la ligne suivante permet de faire afficher le résultat dans l'output donc sans ouvrir de fenêtre.

%matplotlib inline