Académique Documents
Professionnel Documents
Culture Documents
Formation Matlab Partie-3
Formation Matlab Partie-3
Module doctoral
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Gestion des fenêtres graphiques
Graphs 3D
Récapitulatif
Images
Dans Matlab, une instruction graphique ouvre une fenêtre dans laquelle est affiché le
Fenêtres résultat de cette commande.
Par défaut, une nouvelle instruction graphique sera affichée dans la même fenêtre et
Graphs 2D écrasera la figure précédente.
On peut ouvrir une nouvelle fenêtre graphique par la commande figure.
L’exécution de cette commande crée une fenêtre graphique vide.
Graphs multiples
Chaque fenêtre se voit affecter un numéro. Ce numéro est visible dans le bandeau de
la fenêtre sous forme d’un titre.
Personnalisation Le résultat d’une instruction graphique est par défaut affiché dans la dernière fenêtre
graphique ouverte qui est la fenêtre graphique active.
On rend active une fenêtre graphique précédemment ouverte en exécutant la
Graphs 3D
commande figure(n), où n désigne le numéro de la figure.
La commande close permet de fermer la fenêtre graphique active. On ferme une
Récapitulatif fenêtre graphique précédemment ouverte en exécutant la commande close(n), où n
désigne le numéro de la figure. Il est également possible de fermer toutes les fenêtres
graphiques en tapant close all.
Images
EXEMPLE :
Fenêtres >> figure
>> figure
Graphs 2D
La première commande ouvre la fenêtre graphique numéro 1, et la deuxième ouvre la
fenêtre graphique numéro 2. La dernière fenêtre créée est la fenêtre active.
>> x=0:0.1:2*pi; plot(x,sin(x))
Graphs multiples Cette dernière commande trace sin(x) dans la fenetre active
Personnalisation
Fenêtre Fenêtre
Graphs 3D inactive active
Récapitulatif
Images
Graphs multiples
Personnalisation
Graphs 3D
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Désormais, c’est la fenêtre 1 qui est active (elle passe au premier plan).
Intervenant : Ahmed CHEMORI 7
FORMATION MATLAB Partie 3 : Le graphisme
Les fenêtres graphiques possèdent un grand nombre d’attributs, tels que le nom
Fenêtres (Name), une couleur de fond (Color), la position, etc (voir l’aide en ligne).
On obtient la liste complète des attributs de la fenêtre active et de leur valeur, par la
Graphs 2D commande get(n) où n est le numéro de cette fenêtre.
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images ...
Nom de l’attribut Valeur de l’attribut
Intervenant : Ahmed CHEMORI 8
FORMATION MATLAB Partie 3 : Le graphisme
EXEMPLE :
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Nom de la fenêtre
Graphs 3D
Récapitulatif
Images
Dans toutes les représentations graphiques, le logiciel se base sur des données
Fenêtres discrètes rangées dans des matrices ou des vecteurs.
Par exemple, pour représenter des courbes du type y = f(x) ou des surfaces z = f(x; y),
les données x,y,z doivent être des vecteurs (x et y) ou des matrices (z) aux dimensions
Graphs 2D compatibles.
L'instruction de dessin correspondante (par exemple plot(x,y) pour tracer des
Graphs multiples courbes planes) est alors utilisée et éventuellement complétée par des arguments
optionnels (couleur, type de trait, échelle sur les axes, etc...).
La visualisation du résultat s'effectue dans une fenêtre graphique (avec possibilité de
Personnalisation
zoom, de rotation, d'impression, etc).
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Les graphiques 2D
Graphs 3D
Récapitulatif
Images
Personnalisation
Graphs 3D
Récapitulatif
Images
EXEMPLE :
Fenêtres >> x=0:0.5:2*pi; y=sin(x); figure(1); plot(x,y)
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
MATLAB définit automatiquement un système d’axes.
La qualité du tracé dépend du nombre de points
Pour une meilleur qualité le nombre de point peut être augmenté (cf. exemple suivant)
Intervenant : Ahmed CHEMORI 13
FORMATION MATLAB Partie 3 : Le graphisme
EXEMPLE :
Fenêtres >> x=0:0.1:2*pi; y=sin(x); figure(1); plot(x,y)
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Le premier tracé a été supprimé de la fenêtre et il a été remplacé par le nouveau.
Intervenant : Ahmed CHEMORI
La qualité de la courbe est bien meilleure. 14
FORMATION MATLAB Partie 3 : Le graphisme
EXEMPLE :
Fenêtres >> x=0:0.1:2*pi; y=sin(x); figure(1); plot(x,y)
>> figure(2); plot(x,cos(x))
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Pour tracer des courbes superposées, la commande hold peut être utilisée;
Fenêtres Après la commande hold on , tous les tracés ont lieu dans la fenêtre active;
la commande hold off fait revenir au mode de tracé normal.
Graphs 2D EXEMPLE :
>> x=0:0.1:2*pi; y=sin(x); figure(1); plot(x,y);
>> hold on
Graphs multiples >> plot(x,cos(x))
Personnalisation
Graphs 3D
Récapitulatif
Images
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Lorsque plusieurs tracés ont lieu dans la même fenêtre, il peut être intéressant
Fenêtres d’utiliser un style différent pour distinguer les différents tracés. Pour cela on ajoute un
troisième argument à la définition de chaque tracé :
plot(x1,y1,’st1’,x2,y2,’st2’,· · · )
Graphs 2D où ‘sti’ est une chaîne de un à trois caractères pris dans le tableau suivant :
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
EXEMPLE :
Fenêtres >> x=0:0.1:2*pi; y=sin(x); figure(1); >> x=0:0.1:2*pi; y=sin(x); figure(1);
>> plot(x,y,’ro’,x,cos(x),’b*’) >> plot(x,y,’rs--,x,cos(x),’g+-.’)
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Graphs 3D
Récapitulatif
Images
EXEMPLE :
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
La commande loglog
Fenêtres Si x et y sont deux vecteurs de même dimension, la commande loglog(x,y)
permet d’afficher le vecteur log(x) contre le vecteur log(y).
La commande loglog s’utilise de la même manière que la commande plot.
Graphs 2D
EXEMPLE :
>>x = [1:10:1000]; y = x.^3+exp(x)+2.*x; loglog(x,y), grid on
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Personnalisation
EXEMPLE :
Graphs 3D a = randn(1,500);
figure(1)
hist(a)
Récapitulatif
[N,X] = hist(a);
figure(2)
Images pie(N)
EXEMPLE :
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphiques multiples
Graphs 3D
Récapitulatif
Images
EXEMPLE :
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Graphs 3D
Récapitulatif
Images
La fonction plot ainsi que les autres fonctions de tracé, crée automatiquement deux
Fenêtres axes gradués, l’axe des x et l’axe des y :
l’axe des x est l’axe horizontal ; il est associé au vecteur qui est le premier argument
de plot et couvre l’intervalle qui s’étend de la plus petite valeur xmin de ce
Graphs 2D vecteur à sa plus grande valeur xmax ;
l’axe des y est l’axe vertical ; il est associé au vecteur qui est le second argument de
Graphs multiples plot et couvre l’intervalle qui s’étend de la plus petite valeur ymin de ce vecteur et
sa plus grande valeur ymax.
Ces deux axes définissent la zone rectangulaire ou plotting-box dans laquelle
Personnalisation
s’inscrivent les tracés.
La fonction axis :
Graphs 3D axis([x0, x1, y0, y1])
permet d’extraire de la plotting-box la région rectangulaire définie par les points (x0, x1) et
Récapitulatif
(y0, y1), et de l’afficher dans la fenêtre active.
EXEMPLE :
Images
>> x = linspace(0,5,100) ; y = exp(5*x)-1 ;
>> figure(1) ; plot(x,y)
Intervenant : Ahmed CHEMORI
>> figure(2) ; plot(x,y) ; axis([0,5,0,100])
29
FORMATION MATLAB Partie 3 : Le graphisme
L’exemple précédent montre que la modification de la zone affichée a une incidence non
Fenêtres
négligeable sur le facteur d’échelle utilisé par MATLAB.
Le graphe de la fonction exp(5x)−1 qui paraît très “plat" dans la première figure ne l’est
pas autant dans la deuxième figure.
Graphs 2D axis option modifie l’apparence des axes et de la plotting-box et différentes possibilités
s’offrent :
manual fixe les bornes (et le facteur d’échelle) de chaque axe à leur valeur actuelle, de
Graphs multiples telle sorte que si hold a la valeur on, les tracés suivants ne pourront les modifier ;
equal fixe une échelle commune aux deux axes ;
square donne à la plotting-box une forme carrée ;
Personnalisation
normal rend à la plotting-box sa forme rectangulaire usuelle et restaure les valeurs des
bornes de chaque axe à leur valeur par défaut ;
Graphs 3D auto retour au mode automatique de définition des axes et de la plotting-box.
Il faut consulter l’aide en ligne pour d’autres usages de axis.
Récapitulatif
EXEMPLE :
Graphs 3D t = linspace(0,5,100) ;
x1 = t.*exp(t) ; x2 = t.*exp(t/2)/4 ; x3 = t.*exp(t/5)/25;
plot(t,x1,t,x2,t,x3,) ; title(’\beta = 1, 2 et 5’)
Récapitulatif
xlabel(’t’) , ylabel(’\gamma (t,\beta)’)
gtext(’\beta = 1’)
Images gtext(’\beta = 2’)
gtext(’\beta = 5’)
EXEMPLE :
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Graphs multiples
EXEMPLE :
t = linspace(0,3,100);
Personnalisation x1 = exp(t)
figure(10)
plot(t,x1);
Graphs 3D xlabel('t'), ylabel('x_1')
grid on
box off
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Les graphiques 3D
Graphs 3D
Récapitulatif
Images
Graphs 3D
Fnction surf :
surf(xx,yy,z) donne une représentation où les mailles sont colorées.
Récapitulatif
Comme pour les courbes de l’espace, la commande rotate3d on permet de déplacer la
plottingbox à l’aide de la souris.
Images
EXEMPLE :
Fenêtres x = -7.5 : .5 : 7.5 ; y = x ; [xx,yy] = meshgrid(x,y) ;
r = sqrt(xx.^2+yy.^2)+eps ; z = sin(r)./r ;
figure(1) ; mesh(xx,yy,z) ; title(’mesh’)
Graphs 2D figure(2) ; surf(xx,yy,z) ; title(’surf’)
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
La fonction contour3 :
Fenêtres
Semblable à contours, contour3 détermine n surfaces de niveau et en donne une
Graphs 2D
représentation en trois dimensions.
Comme pour contour, la couleur des courbes de niveau est d’autant plus claire que la
valeur du niveau l’est.
Graphs multiples
La fonction pcolor
Personnalisation
pcolor(xx,yy,z) génère une image plane à la même échelle que contour et
Graphs 3D dont les pixels ont une couleur qui si on utilise une échelle de gris, est d’autant plus
claire que la valeur de f(x, y) est grande.
Cette fonction est utilisée en conjonction avec contour.
Récapitulatif
Images
EXEMPLE :
Fenêtres [xx,yy,z] = peaks ;
figure(1) ; mesh(xx,yy,z) ; title(’peaks’)
figure(2) ; contour3(xx,yy,z) ; title(’contour3’)
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
EXEMPLE :
[xx,yy,z] = peaks ;
Fenêtres
figure(3) ; contour(xx,yy,z) ; title(’contour’)
figure(4) ; pcolor(xx,yy,z)
Graphs 2D shading interp % supprime la grille
hold on
contour(xx,yy,z,’k’) % superpose les courbes de niveau en noir
Graphs multiples title(’Contour avec pcolor’)
hold off
Personnalisation
Graphs 3D
Récapitulatif
Images
Si l’on souhaite afficher uniquement les valeurs de quelques lignes de niveau, on peut
Fenêtres
utiliser la commande clabel de la manière suivante :
>> [C,h] = contour(X,Y,Z,n)
>> clabel(C,h,’manual’)
Graphs 2D On peut alors grâce à la souris sélectionner les lignes de niveau pour lesquelles on
souhaite afficher la valeur.
Graphs multiples
EXEMPLE :
Personnalisation
[X,Y] = meshgrid(-2:.2:2, -2:.2:2);
Z = (X-1).^2 + 10*(X.^2-Y).^2;
Graphs 3D [C,h] = contour(X,Y,Z,30);
clabel(C,h,'manual')
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Récapitulatif
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Images
Graphs 3D
Récapitulatif
Images
EXEMPLE :
Fenêtres [x,map]= imread('IM.png');
image(x)
colormap(map)
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Fenêtres
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images
Graphs 2D
Graphs multiples
Personnalisation
Graphs 3D
Récapitulatif
Images