So erstellen sie ein histogramm mit verschiedenen farben in r


Häufig möchten Sie möglicherweise ein Histogramm mit mehreren verschiedenen Farben in R erstellen.

Die folgenden Beispiele zeigen, wie das in Basis R und ggplot2 geht.

Beispiel 1: Histogramm mit verschiedenen Farben in Basis R

Der folgende Code zeigt, wie man ein Histogramm mit einer einzelnen Farbe in Basis R erstellt:

 #create data frame
df <- data. frame (x=c(12, 14, 14, 15, 15, 17, 19, 22, 23, 23, 24))

#create histogram
hist(df$x)

Standardmäßig sind alle Balkenfarben im Histogramm gleich.

Wir können jedoch den folgenden Code verwenden, um ein Histogramm mit drei verschiedenen Farben zu erstellen:

 #create data frame
df <- data. frame (x=c(12, 14, 14, 15, 15, 17, 19, 22, 23, 23, 24))

#define histogram break points
hist_breaks <- hist(df$x)$breaks

#define colors to use in histogram based on break points
color_list <- rep(' red ', length(hist_breaks))
color_list[hist_breaks < 20 ] <- ' blue '
color_list[hist_breaks < 16 ] <- ' purple '

#create histogram with custom colors
hist(df$x, col=color_list)

Histogramm mit verschiedenen Farben in R

So funktionierte die Logik zur Erstellung der drei Farben:

  • Zuerst haben wir festgelegt, dass jeder Balken rot ist.
  • Dann haben wir jeden Balken mit einem Haltepunkt von weniger als 20 in blau geändert.
  • Dann haben wir jeden Balken mit einem Haltepunkt von weniger als 16 in Lila geändert.

Das Endergebnis ist ein dreifarbiges Histogramm.

Beispiel 2: Histogramm mit verschiedenen Farben in ggplot2

Angenommen, wir haben den folgenden Datenrahmen in R:

 #create data frame
df <- data. frame (x=c(12, 14, 14, 15, 15, 17, 19, 22, 23, 23, 24))

#view data frame
df

    x
1 12
2 14
3 14
4 15
5 15
6 17
7 19
8 22
9 23
10 23
11 24

Um ein Histogramm mit verschiedenen Farben für diesen Datenrahmen zu erstellen, müssen wir zunächst mithilfe einer verschachtelten if else-Anweisung eine Gruppierungsvariable für die Werte erstellen:

 #create grouping variable
df$group = ifelse(df$x < 16 , ' C ', ifelse(df$x < 20 , ' B ', ' A '))

#view updated data frame
df

    x group
1 12 C
2 14C
3 14C
4 15C
5 15C
6 17 B
7 19 B
8 22 A
9 23 A
10 23 A
11 24 A

Wir können nun ein Histogramm in ggplot2 erstellen und die Farben im Plot mithilfe der Gruppenvariablen festlegen:

 #create histogram with custom colors
ggplot(df, aes(x, fill=group)) +
  geom_histogram(bins= 6 , color=' black ') +
   scale_fill_manual(values = c(' A ' = ' red ',
                                ' B ' = ' blue ',
                                ' C ' = ' purple '))

Das Endergebnis ist ein dreifarbiges Histogramm.

Hinweis : Die vollständige Dokumentation für scale_fill_manual() finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in R ausgeführt werden:

So erstellen Sie ein relatives Häufigkeitshistogramm in R
So überlagern Sie eine Normalkurve mit einem Histogramm in R
So geben Sie Histogrammunterbrechungen in R an

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert