Come tracciare più istogrammi in r (con esempi)
È possibile utilizzare la seguente sintassi per tracciare più istogrammi sullo stesso grafico in base R :
hist(data1, col=' red ') hist(data2, col=' blue ', add= TRUE )
E puoi utilizzare la seguente sintassi per tracciare più istogrammi in ggplot2 :
ggplot(df, aes(x = x_var, fill = grouping_var)) + geom_histogram(position = ' identity ', alpha = 0.4 )
Gli esempi seguenti mostrano come utilizzare nella pratica ciascuno di questi metodi.
Metodo 1: disegna diversi istogrammi in base R
Il codice seguente mostra come tracciare più istogrammi in un unico grafico in base R:
#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 '))
Metodo 2: traccia più istogrammi in ggplot2
Il codice seguente mostra come tracciare più istogrammi in un unico grafico in R utilizzando 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 ')
Puoi modificare rapidamente i colori degli istogrammi utilizzando la funzione scale_fill_manual() :
Risorse addizionali
I seguenti tutorial spiegano come creare altri grafici comuni in R:
Come creare un istogramma di frequenza relativo in R
Come tracciare più boxplot in un singolo grafico in R
Come tracciare più linee in un grafico in R