Tracer une courbe simple avec plot

Syntaxe

L'utilisation la plus simple de la commande plot est la suivante :

plot(Vx,Vy)

\(Vx = [ x_1 ~ x_2 ~ ... ~ x_n]\) est le vecteur d'abscisses, et \(Vy = [ y_1 ~ y_2 ~ ... ~ y_n]\) le vecteur d'ordonnées.

Les vecteurs peuvent être indifféremment des lignes ou des colonnes, pourvu qu'ils soient tous deux de même longueur.

En général, ce sont des lignes, car la génération de listes de valeurs vue précédemment fournit par défaut des vecteurs ligne.

Exemple

Par exemple, si l'on veut tracer \(\sin(x)\) sur l'intervalle \([0, 2\pi]\), on commence par définir une série raisonnable de valeurs équidistantes sur cet intervalle :

x = 0:2*pi/100:2*pi;

puis, comme la fonction sin peut s'appliquer terme à terme à un tableau, on peut écrire directement :

plot(x,sin(x));

qui fournit le graphe suivant dans la fenêtre graphique  :

Courbe simple avec la commande plot
Courbe simple avec la commande plot

On voit que les axes s'adaptent automatiquement aux valeurs extrêmes des abscisses et ordonnées.

On remarquera que tout ce que demande plot, c'est un vecteur d'abscisses et un vecteur d'ordonnées. Les abscisses peuvent donc être une fonction de \(x\) plutôt que \(x\) lui-même. En d'autres termes, il est donc tout aussi aisé de tracer des courbes paramétrées :

x = 0:2*pi/100:2*pi;
plot(cos(x),sin(x));
Courbe paramétrée avec la commande plot
Courbe paramétrée avec la commande plot

Méthode

Pour tracer une courbe correspondant à une fonction (comme dans l'exemple précédent) sur un ensemble d'abscisses que l'on choisit, il est nécessaire de définir une série raisonnable d'abscisses. Ce que l'on appelle raisonnable ici, c'est une série comportant :

  • un nombre suffisant de points, pour que le tracé de la courbe soit représentatif de la fonction que l'on trace ;

  • un nombre nécessaire de points, pour ne pas avoir trop de points qui n'apporteront rien de plus, et alourdiront la mémoire utilisée et le tracé obtenu.

C'est pourquoi on préfère souvent définir le pas en fonction des bornes de l'intervalle des abscisses qui nous intéresse, et du nombre total de points que l'on estime raisonnable (\(\textrm{pas} = \frac{x_\textrm{max} - x_\textrm{min}}{n}\)).

L'exemple que nous avons pris représente un cas d'usage très courant. On définit un ensemble d'abscisses sur un intervalle de valeurs qui nous intéresse, et à partir de ce vecteur d'abscisses, on définit un vecteur d'ordonnées issu de l'appel d'une fonction.

Le vecteur d'ordonnées est alors, par construction, de même longueur que le vecteur d'abscisses.

Attention

Si vous disposez de deux vecteurs de données, Vx et Vy par exemple, vous ne pouvez tracer Vy en fonction de Vx que si ces deux vecteurs ont même longueur. Sinon, la fonction plot conduira à une erreur explicite :

>> plot(Vx,Vy)
 
    Error using plot
    Vectors must be the same lengths.