Lycée Technique Settat Année Scolaire : 2022/2023
Centre des classes BTS TP2 : graphe sous MATLAB Semestre 2
Classe : 1-BTS/SE TP : Travaux d’atelier
Importance de la représentation graphique
MATLAB est conçu pour les calculs scientifiques. Ceci signifie que Matlab va aider l’utilisateur
(ingénieur, étudiant, comptable,…) à résoudre un problème lié à un phénomène naturel ou bien
physique. Autrement dit, les observations (données) d’un expert ou bien d’un utilisateur sont
enregistrées souvent sous forme des chiffres. Représenter ses observations sous forme d’un tableau ne
permet pas à l’utilisateur de mieux voir la variation de ces données. Tandis que, si ces données sont
représentées graphiquement, l’utilisateur peut non seulement voir la variation mais il peut aussi
sélectionner les régions d’intérêt et les régions ou les événements pertinents se produisent.
I. Représentation graphique 2D
1) Tracer un graphe.
✓ Pour tracer un graphe en 2D, on fait appel à la fonction Matlab « plot ».
Exemple :
Soit F, un vecteur défini par :
>> F= [1 20 14 12 10 11 25 26 14 45 23 45 1 20 14 12 10 11 25]
Pour représenter graphiquement le vecteur F, on peut taper tout simplement : >> plot (F)
✓ Pour tracer, la fonction y définie par : y(t) = sin(2πt)
- Il faut tout d’abord déclarer le vecteur t
- Taper en suite la formule de y. [c.à.d.: 𝑦 = sin(2𝜋𝑡)].
- Remarquez-vous que nous avons écrit seulement y et non pas y(t).
- Finalement, tracer le graphe de y(t) en utilisant la
fonction « plot ».
>> clc;
>> t= [0 : 1/100 : 1] ;
>> y= sin(2*pi*t) ;
>> plot(t, y)
Une fois, vous exécutez votre programme, une fenêtre contenant le
graphe de la fonction mathématique apparait.
1
2) Quadrillage, titres, couleurs, trait
a. Quadrillage
- ajouter la commande suivante au programme précédant : >> grid
- Exécutez votre programme.
- Que remarquez-vous ? Quel est le rôle de la fonction « grid » ?
b. Titres
- ajouter au programme précédent la commande suivante :
>> title(‘le graphe de la fonction y(t)’)
- exécutez votre programme.
- Quel est le rôle de la fonction « title » ?
- Ajouter au programme précédant les commandes suivantes :
>> xlabel(‘le temps t’)
>> ylabel(‘la fonction y’)
- Exécutez votre programme.
- Quel est le rôle des deux commandes « xlabel » et « ylabel »?
c. les couleurs
- Remplacer l’expression plot(t, y) par l’expression plot (t, y,’r’)
- exécutez votre programme.
- Que remarquez-vous ?
d. Le type de trait
- remplacez l’expression plot (t, y,’r’) par l’expression plot (t, y,’+r’)
- exécutez votre programme.
- Que remarquez-vous ?
Remarques
1. Pour qu’on puisse écrire plot(t, y), il faut que les vecteurs t et y soient de la même taille.
2. Il faut écrire correctement les commandes.
3. La représentation graphique doit permettre de visualiser les détails de la fonction tracée.
4. Pour savoir plus sur les différents types de trait et de couleurs tapez : help plot
3) Tracer deux graphes
a. Tracer deux graphes dans deux fenêtres graphiques séparées
Pour tracer deux graphes dans deux fenêtres graphiques séparées, on peut taper : figure(n) ou n
représente le numéro de la fenêtre graphique
>> clear all;
>> clc
>> t= [0 : 1/100 : 1] ;
>> y1=sin (2*pi*t) ;
>> y2=cos(2*pi*t);
>> figure(1)
>> plot(t, y1)
2
>> grid
>> title('le graphe de la fonction y1(t)')
>> xlabel('le temps t')
>> ylabel('la fonction y1')
>> figure(2)
>> plot(t, y2)
>> grid
>> title('le graphe de la fonction y2(t)')
>> xlabel('le temps t')
>> ylabel('la fonction y2')
b. Tracer deux graphes dans la même fenêtre graphique
On peut tracer deux ou plusieurs graphes dans la même fenêtre graphique en utilisant la
fonction « hold ».
>> clear all;
>> clc
>> t= [0 : 1/100 : 1] ;
>> y1=sin (2*pi*t) ;
>> y2=cos(2*pi*t);
>> plot(t, y1)
>> grid
>> hold
>> plot(t, y2,’r’)
II. Représentation graphique 3D
1) En utilisant la fonction « plot3 »
La commande « plot3 » est similaire à la commande « plot » sauf qu’on ajoute un troisième axe Z.
Exemple 1 : Exemple 2 :
>> x=0:0.1:10; >> t = 0:0.1:10*pi;
>> plot3 (sin(x*pi), cos(x*pi), x*pi) >> x = exp(-t/20).*cos(t) ;
>> title(' Trigonométrie ') >> y = exp(-t/20).*sin(t) ;
>> xlabel(’sin(t)’), ylabel(’cos(t)’), zlabel(’t’) >> z = t ;
>> plot3(x,y,z);
>> xlabel('x');
>> ylabel('y');
>> zlabel('z');
>> grid
Fléché de rotation
Une fois le tracé apparait, vous pouvez modifier la rotation des axes. Ceci est possible soit en
utilisant la flèche (figure) soit en tapant la commande « view » dans le programme.
3
2) En utilisant la fonction « Mesh »
Avec la commande mesh on peut aisément avoir une représentation d'une fonction f(x, y). Cependant il
faut construire la grille des coordonnées des points lesquels on a les valeurs de la fonction à l'aide de la
fonction meshgrid.
Exemple 1 :
• On va tracer le graphe de la fonction de deux variable z=cos (πx).sin (πy)
>> x = 1:0.1:2;
>> y = -1:0.1:1;
>> [X Y] = meshgrid(x,y);
>> mesh(X,Y,cos(pi*X).*sin(pi*Y)) % Cordonnées en x et en y
>> meshc(X,Y,cos(pi*X).*sin(pi*Y)) % grillage 3D
>> xlabel('x'); ylabel('y'); zlabel('z');
>> title('z=cos(pi*x)*sin(pi*y)') ;
Exemple 2
𝟐 −𝒚𝟐
On veut tracer la fonction f définie : (𝒙, 𝒚) → 𝒙𝒆−𝒙 dans le domaine [-2,2] x [-2,2].
>> x=[-2:0.2:2];
>> y=[-2:0.2:2];
>> [X ,Y]=meshgrid(x,y);
>> Z=X.* exp(-X.^2-Y.^2);
>> mesh(X, Y, Z)
3) En utilisant la fonction « surf »
✓ La commande « surf » permet de tracer une surface paramétrée d’équations
𝑥 = 𝑔1 (𝑢, 𝑣)
{𝑦 = 𝑔2 (𝑢, 𝑣)
𝑧 = 𝑔3 (𝑢, 𝑣)
✓ On suit les mêmes étapes que la commande « mesh ».
Exemple
On veut tracer le graphe du système d’équations suivant sur le domaine [0,2𝜋]
u [0,2]
𝑥 = 𝑣𝑐𝑜𝑠(𝑢)
{𝑦 = 𝑣sin(𝑢)
𝑧 = 2𝑢
>> v=[0:0.2:2*pi];
>> u=[0:0.2:2];
4
>> [U,V] = meshgrid(v, u);
>> X = V.*cos(U);
>> Y = V.*sin(U);
>> Z = 2*U;
>> surf(X,Y,Z)
Remarques
o ils existent d’autres commandes pour faire une représentation 3D telles que « meshz »,
« waterfall »,…etc.
o Utiliser la commande « help » pour avoir l’aide sur ces commandes.
4) la fonction peaks
La fonction peaks est une fonction à 2D prédéfinie dans matlab.
>> x = -3:0.1:3; y = -3:0.1:3;
>> [X Y] = meshgrid(x,y);
>> Z = peaks(X, Y) ;
>> meshc(X,Y,Z))
III. Représentations spécifiques
Exemple 1 : la commande « bar »
>> a = [1 2 3 4 5 6 7];
>> b = [85 93 87 91 95 71 98];
>> bar(a,b);
>> xlabel('a')
>> ylabel('b')
Exemple 2 : la commande « hist »
>> y = -2*log(rand(1,5000));
>> x = 0.2:0.4:10;
>> hist(y,x);
Exemple 3 : la commande « pie »
>> pourcentage = [31 36 18 8 7];
>> h = pie(pourcentage);
Remarque : remplacer la commande « pie » par « pie3 ». Que ce passe t il ?