Hoe meerdere histogrammen in r te plotten (met voorbeelden)
U kunt de volgende syntaxis gebruiken om meerdere histogrammen in hetzelfde diagram in basis R te plotten:
hist(data1, col=' red ') hist(data2, col=' blue ', add= TRUE )
En u kunt de volgende syntaxis gebruiken om meerdere histogrammen in ggplot2 te plotten:
ggplot(df, aes(x = x_var, fill = grouping_var)) + geom_histogram(position = ' identity ', alpha = 0.4 )
De volgende voorbeelden laten zien hoe u elk van deze methoden in de praktijk kunt gebruiken.
Methode 1: teken verschillende histogrammen in basis R
De volgende code laat zien hoe u meerdere histogrammen in één plot in basis R kunt plotten:
#make this example reproducible
set. seeds (1)
#define data
x1 = rnorm(1000, mean=0.8, sd=0.2)
x2 = rnorm(1000, mean=0.4, sd=0.1)
#plot two histograms in same graph
hist(x1, col=' red ', xlim=c(0, 1.5), main=' Multiple Histograms ', xlab=' x ')
hist(x2, col=' green ', add= TRUE )
#add legend
legend(' topright ', c(' x1 variable ', ' x2 variable '), fill=c(' red ', ' green '))
Methode 2: Meerdere histogrammen plotten in ggplot2
De volgende code laat zien hoe u meerdere histogrammen in één plot in R kunt plotten met behulp van ggplot2 :
library (ggplot2)
#make this example reproducible
set. seeds (1)
#create data frame
df <- data. frame (var = c(rep(' x1 ', 1000), rep(' x2 ', 1000) ),
value = c(rnorm(1000, mean=0.8, sd=0.1),
rnorm(1000, mean=0.4, sd=0.1)))
#view first six rows of data frame
head(df)
var value
1 x1 0.7373546
2 x1 0.8183643
3 x1 0.7164371
4x1 0.9595281
5 x1 0.8329508
6 x1 0.7179532
#plot multiple histograms
ggplot(df, aes(x=value, fill=var)) +
geom_histogram(color=' #e9ecef ', alpha=0.6, position=' identity ')
U kunt de kleuren van histogrammen snel wijzigen met behulp van de scale_fill_manual() functie:
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelgebruikte grafieken in R kunt maken:
Hoe maak je een relatief frequentiehistogram in R
Hoe meerdere boxplots in één grafiek in R te plotten
Hoe meerdere lijnen in een grafiek te plotten in R