Gestion de la fenêtre graphique

Vous l'avez sans doute déjà expérimenté par vous même : lorsque vous appelez la fonction plot, une fenêtre graphique est créée. Si vous utilisez à nouveau la fonction plot, MATLAB efface cette fenêtre pour effectuer le nouveau tracé. Nous allons voir différentes fonctions permettant de gérer ou d'interagir avec cette fenêtre graphique.

Superposition de graphiques

Nous avons vu qu'il est possible de tracer plusieurs courbes lors d'un appel de la fonction plot. Mais dans certains cas, il peut être utile de tracer des graphiques de natures différentes (avec plot, bar, hist, etc), dans une même fenêtre graphique.

Par défaut, les fonctions de tracés effacent systématiquement le graphique précédent. Il est parfois utile de le conserver et de venir le surcharger avec le nouveau graphique. Pour cela on utilise la commande hold. Pour démarrer le mode surcharge, tapez hold on, pour revenir en mode normal, hold off.

Il est conseillé de ne pas abuser de cette commande.

Exemple

x=-pi:pi/20:pi;
plot(x,exp(-x.^2));
hold on;
bar(x,exp(-x.^2),'g');
hold off;
Tracés obtenus avec la fonction hold
Tracés obtenus avec la fonction hold

Création d'une fenêtre graphique

Si vous venez d'effectuer un tracé, et que vous souhaitez appeler une autre fonction de tracé, tout en conservant intacte la fenêtre graphique précédente, il est possible d'en créer une nouvelle par la fonction figure.

Si la fonction figure est appelée sans argument, MATLAB crée une nouvelle fenêtre graphique, en incrémentant le numéro de cette fenêtre. Il est possible de créer une fenêtre spécifique en précisant son numéro, comme argument de la fonction.

Toute fonction graphique utilisée après un appel de la fonction figure, produira un tracé dans la nouvelle fenêtre graphique, sans modifier celles déjà présentes.

Exemple

x=-pi:pi/20:pi;
plot(x,exp(-x.^2));
figure;
plot(x,cos(x));
figure(10);
plot(x, x.*sin(x));

Effacement de la fenêtre graphique

Pour effacer la fenêtre graphique courante, il suffit d'appeler la commande clf. Cette commande annule également toutes les commandes subplot et hold passées.

Pour effacer une fenêtre particulière, il suffit d'en préciser le numéro en argument de la fonction.

Exemple

clf(2);

Fermeture d'une fenêtre graphique

De manière analogue, il est possible de fermer la fenêtre graphique courante par la commande close, ou de spécifier en argument le numéro de la fenêtre que l'on souhaite fermer.

Saisie d'un point à la souris

La commande ginput(N) permet de cliquer \(N\) points dans la fenêtre graphique, et d'en récupérer les coordonnées. La fonction renvoie un tableau, dont la première colonne correspond aux abscisses, la seconde aux ordonnées des points sélectionnés.

Utilisée sans le paramètre N, la fonction tourne en boucle jusqu'à ce que la touche «Entrée» soit tapée.

Ajout de texte sur un graphique

Il est possible d'ajouter du texte sur une fenêtre graphique en choisissant sa position.

La fonction gtext( strTexte ) placera le texte contenu dans la variable strTexte à l'emplacement indiqué par un clic de souris.