Maîtriser les graphiques MATLAB : techniques de tracé avancées
Ce chapitre continue d'explorer les capacités de tracé et de graphiques de MATLAB. Nous discuterons de :
- Dessin de diagrammes en barres
- Dessin de courbes de niveau (contours)
- Graphiques tridimensionnels
Dessin de diagrammes en barres
La commande bar dessine un diagramme en barres bidimensionnel. Prenons un exemple pour démontrer l'idée.
Exemple
Imaginons une classe avec 10 étudiants. Nous connaissons le pourcentage de notes obtenues par ces étudiants : 75, 58, 90, 87, 50, 85, 92, 75, 60 et 95. Nous allons dessiner le diagramme en barres pour ces données.
Créez un fichier script et saisissez le code suivant :
x = [1:10]; y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95]; bar(x,y), xlabel('Étudiant'),ylabel('Score'), title('Premier semestre:') print -deps graph.eps
Lorsque vous exécutez le fichier, MATLAB affiche le diagramme en barres suivant :
Dessin de courbes de niveau
Une ligne de niveau d'une fonction de deux variables est une courbe le long de laquelle la fonction a une valeur constante. Les lignes de niveau sont utilisées pour créer des cartes de niveau en reliant des points d'élévation égale au-dessus d'un niveau donné, tel que le niveau moyen de la mer.
MATLAB fournit une fonction contour pour dessiner des cartes de niveau.
Exemple
Générons une carte de niveau qui montre les lignes de niveau pour une fonction donnée g = f(x, y). Cette fonction a deux variables. Nous devrons donc générer deux variables indépendantes, c'est-à-dire deux jeux de données x et y. Cela se fait en appelant la commande meshgrid.
La commande meshgrid est utilisée pour générer une matrice d'éléments qui donnent la plage sur x et y ainsi que la spécification d'incrément dans chaque cas.
Traçons notre fonction g = f(x, y), où −5 ≤ x ≤ 5, −3 ≤ y ≤ 3. Prenons un incrément de 0,1 pour les deux valeurs. Les variables sont définies comme suit :
[x,y] = meshgrid(–5:0.1:5, –3:0.1:3);
Enfin, nous devons assigner la fonction. Soit notre fonction : x2 + y2
Créez un fichier script et saisissez le code suivant :
[x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %variables indépendantes g = x.^2 + y.^2; % notre fonction contour(x,y,g) % appel de la fonction contour print -deps graph.eps
Lorsque vous exécutez le fichier, MATLAB affiche la carte de niveau suivante :
Modifions légèrement le code pour améliorer la carte :
[x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %variables indépendantes g = x.^2 + y.^2; % notre fonction [C, h] = contour(x,y,g); % appel de la fonction contour set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2) print -deps graph.eps
Lorsque vous exécutez le fichier, MATLAB affiche la carte de niveau suivante :
Graphiques tridimensionnels
Les graphiques tridimensionnels affichent essentiellement une surface définie par une fonction en deux variables, g = f(x,y).
Comme auparavant, pour définir g, nous créons d'abord un ensemble de points (x,y) sur le domaine de la fonction en utilisant la commande meshgrid. Ensuite, nous assignons la fonction elle-même. Finalement, nous utilisons la commande surf pour créer un graphique de surface.
L'exemple suivant démontre le concept :
Exemple
Créons une carte de surface 3D pour la fonction g = xe-(x2 + y2)
Créez un fichier script et saisissez le code suivant :
[x,y] = meshgrid(-2:.2:2); g = x .* exp(-x.^2 - y.^2); surf(x, y, g) print -deps graph.eps
Lorsque vous exécutez le fichier, MATLAB affiche la carte 3-D suivante :
Vous pouvez également utiliser la commande mesh pour générer une surface tridimensionnelle. Cependant, la commande surf affiche à la fois les lignes de connexion et les faces de la surface en couleur, alors que la commande mesh crée une surface en treillis avec des lignes colorées reliant les points définissants.
MATLAB
- MATLAB : Aperçu complet de l'environnement de calcul numérique de référence
- Maîtriser les bases de MATLAB : Syntaxe et commandes essentielles
- Comprendre les variables dans MATLAB : Bases et exemples
- Commandes MATLAB essentielles pour un calcul efficace
- Types de données MATLAB : Guide complet
- Maîtriser les opérateurs MATLAB : Arithmétiques, Logiques, Bitwise et Ensemblistes
- Maîtriser les vecteurs MATLAB : Bases des vecteurs ligne et colonne
- Maîtriser les matrices MATLAB : Création, indexation et manipulation
- MATLAB : Maîtriser les tableaux multidimensionnels et spéciaux