Come creare un barplot in ggplot2 con più variabili
Un grafico a barre è utile per visualizzare le quantità di diverse variabili categoriali.
A volte vogliamo creare un barplot che visualizzi le quantità di variabili categoriali divise in sottogruppi.
Ad esempio, potremmo voler visualizzare le vendite totali di popcorn e bibite per tre diversi stadi sportivi. Questo tutorial fornisce un esempio passo passo di come creare il seguente grafico a barre con più variabili:
Passaggio 1: creare i dati
Innanzitutto, creiamo un data frame per contenere i nostri dati:
#createdata df <- data.frame(stadium= rep (c(' A ', ' B ', ' C '), each =4), food= rep (c(' popcorn ', ' soda '), times =6), sales=c(4, 5, 6, 8, 9, 12, 7, 9, 9, 11, 14, 13)) #viewdata df stadium food sales 1 A popcorn 4 2 A soda 5 3 A popcorn 6 4 A soda 8 5 B popcorn 9 6 B soda 12 7 B popcorn 7 8 B soda 9 9 C popcorn 9 10 C soda 11 11 C popcorn 14 12 C soda 13
Passaggio 2: crea il Barplot con più variabili
Il codice seguente mostra come creare il grafico a barre con più variabili utilizzando la funzione geom_bar() per creare le barre e l’argomento ‘dodge’ per specificare che le barre in ciascun gruppo devono “schivare” ed essere visualizzate affiancate.
ggplot(df, aes (fill=food, y=sales, x=stadium)) + geom_bar(position=' dodge ', stat=' identity ')
Le diverse fasi – A, B e C – sono visualizzate lungo l’asse x e le corrispondenti vendite di popcorn e bibite (in migliaia) sono visualizzate lungo l’asse y.
Passaggio 3: modifica l’estetica del Barplot
Il codice seguente mostra come aggiungere un titolo, modificare le etichette degli assi e personalizzare i colori sul grafico a barre:
ggplot(df, aes (fill=food, y=sales, x=stadium)) + geom_bar(position=' dodge ', stat=' identity ') + ggtitle(' Sales by Stadium ') + xlab(' Stadium ') + ylab(' Sales (in thousands) ') + scale_fill_manual(' Product ', values=c(' coral2 ',' steelblue '))
Risorse addizionali
Come cambiare il titolo della legenda in ggplot2
Come modificare la dimensione della legenda in ggplot2
Una guida completa ai migliori temi ggplot2