Histogramme dans MATLAB

Ammar Ali 30 janvier 2023
  1. Créer un histogramme de vecteurs dans MATLAB
  2. Créer un histogramme catégoriel dans MATLAB
  3. Créer un histogramme normalisé dans MATLAB
  4. Tracer plusieurs histogrammes sur la même figure dans MATLAB
  5. Enregistrer un histogramme dans MATLAB
  6. Histogramme bivarié dans MATLAB
Histogramme dans MATLAB

Dans ce tutoriel, nous discuterons comment tracer un histogramme de données données en utilisant les fonctions histogram() et histogram2() dans MATLAB.

Créer un histogramme de vecteurs dans MATLAB

Pour créer un histogramme du vecteur donné, vous pouvez utiliser la fonction histogram() dans MATLAB. Par exemple, créons un histogramme d’un vecteur donné. Voir le code ci-dessous.

vector = randn(100,1);
HG = histogram(vector)

Production:

HG = 

  Histogram with properties:

             Data: [100x1 double]
           Values: [2 18 29 31 17 3]
          NumBins: 6
         BinEdges: [-3 -2 -1 0 1 2 3]
         BinWidth: 1
        BinLimits: [-3 3]
    Normalization: 'count'
        FaceColor: 'auto'
        EdgeColor: [0 0 0]

Histogramme d’un vecteur dans Matlab

Dans le code ci-dessus, nous avons créé l’histogramme d’un vecteur aléatoire. Dans la sortie, les propriétés de l’histogramme, et nous pouvons modifier ces propriétés. Par exemple, changeons la couleur du visage de l’histogramme en utilisant la propriété FaceColor, la couleur du bord en utilisant la propriété EdgeColor et le nombre de cases en utilisant la propriété NumBins. Voir le code ci-dessous.

vector = randn(100,1);
HG = histogram(vector);
HG.FaceColor = 'g';
HG.EdgeColor = 'r';
HG.NumBins = 10;

Production:

Propriétés de l’histogramme

La couleur de la face de l’histogramme devient verte, la couleur des bords devient rouge et le nombre de cases passe à 10. Vous pouvez également modifier les autres propriétés de l’histogramme à votre guise.

Créer un histogramme catégoriel dans MATLAB

Vous pouvez également créer un histogramme catégoriel à l’aide de la fonction histogram(). Vous pouvez définir des valeurs dans le tableau catégoriel comme certains noms, etc., et vous devez donner à chaque variable catégorielle une valeur qui sera affichée comme hauteur dans l’histogramme. Par exemple, créons un histogramme de trois variables catégorielles: Yes, No et Not Sure. Voir le code ci-dessous.

Vector = [7 7 7 8 8 8 8 9 7 8 8 8 7 8 7 8 7 8 8 8];
Cat = categorical(Vector,[7 8 9],{'Yes','No','Not Sure'});
HG = histogram(Cat)

Production:

Histogramme de l’entrée catégorielle

Dans le code ci-dessus, nous avons créé un histogramme catégoriel de trois variables. Nous avons attribué à chaque variable une valeur différente. Par exemple, nous avons attribué la valeur 7 à la variable Yes, 8 à la variable No et 9 à la variable Not Sure. La valeur 7 répétée sept fois dans la variable Vector signifie que la variable Yes sera affichée dans un histogramme de hauteur 7 et ainsi de suite. Vous pouvez ajouter autant de variables catégorielles que vous le souhaitez dans l’histogramme.

Créer un histogramme normalisé dans MATLAB

On peut normaliser un histogramme en utilisant la propriété Normalization à l’intérieur de la fonction histogram(). Par exemple, créons un histogramme à partir de nombres aléatoires puis normalisons-le en utilisant la propriété Normalization. Voir le code ci-dessous.

clc
vector = randn(100,1);
HG = histogram(vector,'Normalization','probability')

Production:

Normalisation de l’histogramme

L’histogramme ci-dessus est normalisé à l’aide de la normalisation des probabilités. Vous pouvez également utiliser d’autres normalisations, comme la normalisation de comptage.

Tracer plusieurs histogrammes sur la même figure dans MATLAB

On peut également tracer plusieurs histogrammes sur la même figure en utilisant la fonction hold. Par exemple, traçons deux histogrammes sur la même figure. Voir le code ci-dessous.

vector = randn(100,1);
HG1 = histogram(vector)
hold on
vector = 5+randn(100,1);
HG2 = histogram(vector)

Production:

Tracer plusieurs histogrammes

Dans le code ci-dessus, nous avons tracé deux histogrammes sur la même figure. Vous pouvez tracer autant de tracés que vous le souhaitez sur la même figure, et MATLAB leur donnera automatiquement une couleur distincte. Vous pouvez également donner à chaque histogramme la couleur souhaitée. Vous pouvez également ajouter des légendes aux histogrammes en utilisant la fonction legend() pour les séparer les uns des autres.

Enregistrer un histogramme dans MATLAB

Vous pouvez sauvegarder un histogramme en utilisant la fonction savefig() dans MATLAB, et vous pouvez charger l’histogramme sauvegardé en utilisant la fonction openfig(). Voir le code ci-dessous.

savefig('Hist.fig');
close gcf
histogram = openfig('Hist.fig');

Dans le code ci-dessus, Hist est la variable dans laquelle l’histogramme est stocké. Consultez ce lien pour plus d’informations.

Histogramme bivarié dans MATLAB

Si vous souhaitez créer un histogramme de deux variables, vous pouvez utiliser la fonction histogram2(). Par exemple, traçons un histogramme de deux vecteurs. Voir le code ci-dessous.

vector1 = randn(100,1);
vector2 = randn(100,1);
HG = histogram2(vector1,vector2)

Production:

Histogramme bivarié

Dans le code ci-dessus, nous avons tracé un histogramme bivarié à partir de deux vecteurs. Vous pouvez également ajouter une barre de couleur à l’aide de la fonction colorbar, qui ajoutera des couleurs à l’histogramme en fonction de la hauteur des bacs. La couleur des bacs passera du plus froid au plus chaud avec une augmentation de la hauteur du bac et vice versa. Par exemple, ajoutons une barre de couleur à l’histogramme bivarié ci-dessus. Voir le code ci-dessous.

vector1 = randn(100,1);
vector2 = randn(100,1);
HG = histogram2(vector1,vector2,[12 12],'FaceColor','flat')
colorbar

Production:

Barre de couleurs de l’histogramme bivarié

Vous pouvez également changer la vue de l’histogramme à l’aide de la fonction view(). Par exemple, changeons la vue de l’histogramme bivarié ci-dessus de 3D à 2D. Voir le code ci-dessous.

vector1 = randn(100,1);
vector2 = randn(100,1);
HG = histogram2(vector1,vector2,[12 12],'FaceColor','flat')
colorbar
view(2)

Production:

vue histogramme bivariée

Vous pouvez également modifier d’autres propriétés de l’histogramme bivarié en utilisant la même fonction et les mêmes propriétés que celles utilisées dans les histogrammes ci-dessus. Par exemple, vous pouvez changer la couleur du visage en utilisant la propriété FaceColor, la couleur des bords en utilisant la propriété EdgeColor, le nombre de cases en utilisant la propriété NumBins, et la normalisation en utilisant la propriété Normalization, etc. et chargez les histogrammes bivariés en utilisant les fonctions savefig() et openfig(). Consultez ce lien pour plus d’informations.

Auteur: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Article connexe - MATLAB Plot