Le tracés de courbes sous Python est très simple grâce à la bibliothèque
Le tracé est effectué dans la fenêtre courante et chaque instruction plot ajoute une courbe d'une couleur différente. L'instruction clf() permet d'effacer la figure.
x=linspace(0,10,100)
y=sin(x)
clf()
plot(x,y)
plot(x,sin(2*x))
Pour imposer à la courbe une couleur ou un style particulier, il est possible d'ajouter un argument de format entre guillemets. Par exemple "r--o" conduit à une courbe rouge, en tirets, où les points sont localisés par des cercles.
La couleur est spécifiée par une lettre : b pour bleu, r pour rouge, g pour vert, y pour jaune, k pour noir, m pour magenta, c pour cyan et w pour blanc (moins utile lorsque le fond est blanc...).
Le style de ligne est spécifié par un sigle : - pour un trait plein, -- pour des tirets, : pour des pointillets et -. pour un trait mixte.
Le style des marqueurs des points peut aussi être modifié par un caractères. Vous pourrez tester les caractères suivants : +o*.xsd^vp.
x=linspace(0,10,100)
clf()
plot(x,sin(x),"o-r")
plot(x,sin(x-0.4),"x--g")
plot(x,sin(x-0.8),"d:k")
plot(x,sin(x-1.2),"-.m")
Par défaut, les échelles sont ajustées pour occuper la totalité de la figure. Lorsque la courbe nécessite une même échelle en x et y, utiliser la fonction square. L'exemple ci-dessous trace un cercle de rayon unitaire.
t=linspace(0,2*pi,100)
clf()
plot(sin(t),cos(t)) # Le tracé n'est pas circulaire
clf()
axes().set_aspect(1)
plot(sin(t),cos(t)) # Le tracé est circulaire
Une légende permet de connaitre la signification de chaque courbe. L'appel à la fonction legend permet de l'intégrer au graphique.
Un titre permet de donner du sens à un graphique. L'appel à la fonction xtitle permet d'insérer un titre au dessus du graphique.
Les fonctions xlabel et ylabel permettent d'ajouter du texte pour chaque axe.
x=linspace(0,10,100)
clf()
plot(x, cos(x), "r", label="cosinus")
plot(x, sin(x), "b", label="sinus")
legend()
title("Fonctions sinusoïdales")
xlabel("Angle")
ylabel("Valeur")
Lorsque x et y sont des tableaux, la fonction plot trace chaque colonne de y en fonction de chaque colonne de x. L'exemple suivant trace 100 segments allant de l'axe des abscisses à l'ordonnée en sinus (x est une ligne de 100 éléments).
x=linspace(0,10,100)
clf()
xx=array([x,x])
yy=array([x*0,sin(x)])
plot(xx,yy,"b")