Histogramm in MATLAB

Ammar Ali 15 Februar 2024
  1. Erstellen eines Histogramms von Vektoren in MATLAB
  2. Erstellen Sie ein kategoriales Histogramm in MATLAB
  3. Erstellen Sie ein normalisiertes Histogramm in MATLAB
  4. Plotten mehrerer Histogramme auf der gleichen Abbildung in MATLAB
  5. Speichern eines Histogramms in MATLAB
  6. Bivariates Histogramm in MATLAB
Histogramm in MATLAB

In diesem Tutorial werden wir diskutieren, wie ein Histogramm gegebener Daten mit den Funktionen histogram() und histogram2() in MATLAB gezeichnet wird.

Erstellen eines Histogramms von Vektoren in MATLAB

Um ein Histogramm des angegebenen Vektors zu erstellen, können Sie die Funktion histogram() in MATLAB verwenden. Lassen Sie uns beispielsweise ein Histogramm eines bestimmten Vektors erstellen. Siehe den Code unten.

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

Ausgabe:

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]

Histogramm eines Vektors in Matlab

Im obigen Code haben wir das Histogramm eines Zufallsvektors erstellt. In der Ausgabe die Eigenschaften des Histogramms, und wir können diese Eigenschaften ändern. Ändern Sie beispielsweise die Gesichtsfarbe des Histogramms mithilfe der Eigenschaft FaceColor, die Kantenfarbe mithilfe der Eigenschaft EdgeColor und die Anzahl der Bins mithilfe der Eigenschaft NumBins. Siehe den Code unten.

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

Ausgabe:

Histogrammeigenschaften

Die Gesichtsfarbe des Histogramms wird in Grün, die Kantenfarbe in Rot und die Anzahl der Fächer in 10 geändert. Sie können auch andere Histogrammeigenschaften nach Belieben ändern.

Erstellen Sie ein kategoriales Histogramm in MATLAB

Sie können auch ein kategoriales Histogramm mit der Funktion histogram() erstellen. Sie können Werte im kategorialen Array wie einige Namen usw. definieren und jeder kategorialen Variablen einen Wert zuweisen, der im Histogramm als Höhe angezeigt wird. Erstellen wir beispielsweise ein Histogramm mit drei kategorialen Variablen: Yes, No und Not Sure. Siehe den Code unten.

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)

Ausgabe:

Histogramm der kategorialen Eingabe

Im obigen Code haben wir ein kategoriales Histogramm von drei Variablen erstellt. Wir haben jeder Variablen einen anderen Wert zugewiesen. Zum Beispiel haben wir der Variablen Yes den Wert 7, der Variablen No den Wert 8 und der Variablen Not Sure den Wert 9 zugewiesen. Der Wert 7, der siebenmal in der Variablen Vektor wiederholt wird, bedeutet, dass die Variable Ja in einem Histogramm mit der Höhe 7 usw. angezeigt wird. Sie können dem Histogramm beliebig viele kategoriale Variablen hinzufügen.

Erstellen Sie ein normalisiertes Histogramm in MATLAB

Wir können ein Histogramm mit der Eigenschaft Normalisierung in der Funktion histogram() normalisieren. Lassen Sie uns beispielsweise ein Histogramm aus Zufallszahlen erstellen und es dann mit der Eigenschaft Normalization normalisieren. Siehe den Code unten.

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

Ausgabe:

Histogramm-Normalisierung

Das obige Histogramm wird unter Verwendung der Wahrscheinlichkeitsnormalisierung normalisiert. Sie können auch andere Normalisierungen verwenden, z. B. die Zählnormalisierung.

Plotten mehrerer Histogramme auf der gleichen Abbildung in MATLAB

Mit der Funktion hold können wir auch mehrere Histogramme auf derselben Figur zeichnen. Zeichnen wir zum Beispiel zwei Histogramme in derselben Figur. Siehe den Code unten.

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

Ausgabe:

Zeichnen mehrerer Histogramme

Im obigen Code haben wir zwei Histogramme in derselben Abbildung dargestellt. Sie können beliebig viele Diagramme auf derselben Figur zeichnen, und MATLAB gibt ihnen automatisch eine separate Farbe. Sie können jedem Histogramm auch die gewünschte Farbe geben. Sie können den Histogrammen auch Legenden hinzufügen, indem Sie die Funktion legend() verwenden, um sie voneinander zu trennen.

Speichern eines Histogramms in MATLAB

Sie können ein Histogramm mit der Funktion savefig() in MATLAB speichern und das gespeicherte Histogramm mit der Funktion openfig() laden. Siehe den Code unten.

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

Im obigen Code ist Hist die Variable, in der das Histogramm gespeichert ist. Überprüfen Sie diesen Link für weitere Informationen.

Bivariates Histogramm in MATLAB

Wenn Sie ein Histogramm aus zwei Variablen erstellen möchten, können Sie die Funktion histogram2() verwenden. Zeichnen wir zum Beispiel ein Histogramm von zwei Vektoren. Siehe den Code unten.

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

Ausgabe:

Bivariates Histogramm

Im obigen Code haben wir ein bivariates Histogramm aus zwei Vektoren aufgezeichnet. Sie können auch eine Farbleiste mit der Funktion Farbleiste hinzufügen, mit der dem Histogramm Farben entsprechend der Höhe der Fächer hinzugefügt werden. Die Farbe der Behälter ändert sich mit zunehmender Höhe des Behälters von kälter zu heißer und umgekehrt. Fügen wir dem obigen bivariaten Histogramm beispielsweise einen Farbbalken hinzu. Siehe den Code unten.

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

Ausgabe:

Bivariate Histogramm-Farbleiste

Sie können die Ansicht des Histogramms auch mit der Funktion view() ändern. Lassen Sie uns beispielsweise die Ansicht des obigen bivariaten Histogramms von 3D in 2D ändern. Siehe den Code unten.

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

Ausgabe:

bivariate Histogrammansicht

Sie können auch andere Eigenschaften des bivariaten Histogramms ändern, indem Sie dieselbe Funktion und dieselben Eigenschaften wie in den obigen Histogrammen verwenden. Sie können beispielsweise die Gesichtsfarbe mithilfe der Eigenschaft FaceColor, die Kantenfarbe mithilfe der Eigenschaft EdgeColor, die Anzahl der Fächer mithilfe der Eigenschaft NumBins und die Normalisierung mithilfe der Eigenschaft Normalization usw. ändern. Sie können auch speichern und laden Sie die bivariaten Histogramme mit den Funktionen savefig() und openfig(). Überprüfen Sie diesen Link für weitere Informationen.

Autor: 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

Verwandter Artikel - MATLAB Plot