Come regolare lo spazio tra le barre in ggplot2 (con esempi)
È possibile utilizzare i seguenti metodi per regolare lo spazio tra le barre nei grafici a barre ggplot2:
Metodo 1: regola la spaziatura tra le barre nel grafico a barre
ggplot(df, aes(x=x_variable)) +
geom_bar(width= .4 )
La larghezza predefinita tra le barre è 0,9 .
Più la larghezza è vicina a 1 , più vicine saranno le barre. Quanto più la larghezza è vicina a 0 , tanto più le barre saranno divaricate.
Metodo 2: regola la spaziatura tra le barre in un grafico a barre raggruppate
ggplot(df, aes(x=x_variable, y=y_variable, fill=fill_variable)) + geom_bar(width= .5 , stat=' identity ', position=position_dodge( .7 ))
Il valore della larghezza controlla la spaziatura tra i cluster mentre il valore position_dodge() controlla la spaziatura tra le barre all’interno dello stesso cluster.
I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con il seguente frame di dati in R:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C'), position=c('G', 'G', 'F', 'G', 'F', 'F', 'F', 'G'), points=c(12, 22, 24, 23, 20, 15, 11, 30)) #view data frame df team position points 1 AG 12 2 AG 22 3 AF 24 4 BG 23 5 BF 20 6 BF 15 7 CF 11 8 CG 30
Esempio 1: regola la spaziatura tra le barre nel grafico a barre
Il codice seguente mostra come creare un grafico a barre per visualizzare le occorrenze di ciascuna squadra utilizzando la spaziatura predefinita di 0,9 :
library (ggplot2) #create bar plot with default spacing ggplot(df, aes(x=team)) + geom_bar()
E il codice seguente mostra come aumentare lo spazio tra le barre diminuendo il valore dell’argomento larghezza a 0,4 :
library (ggplot2) #create bar plot with increased spacing ggplot(df, aes(x=team)) + geom_bar(width= .4 )
Diminuendo il valore dell’argomento larghezza , abbiamo aumentato la spaziatura tra le barre.
Esempio 2: regolare la spaziatura tra le barre in un grafico a barre raggruppate
Il codice seguente mostra come creare un grafico a barre raggruppato per visualizzare i punti totali segnati per squadra e posizione:
library (ggplot2) #create clustered bar plot with default spacing ggplot(df, aes(x=team, y=points, fill=position)) + geom_bar(stat=' identity ', position=' dodge ')
E il codice seguente mostra come aumentare sia lo spazio tra le barre raggruppate sia lo spazio tra le barre all’interno dello stesso cluster:
library (ggplot2) #create clustered bar plot with increased spacing ggplot(df, aes(x=team, y=points, fill=position)) + geom_bar(width= .5 , stat=' identity ', position=position_dodge( .7 ))
Diminuendo il valore della larghezza , abbiamo aumentato la spaziatura tra i cluster.
E diminuendo il valore di position_dodge() , abbiamo aumentato la spaziatura tra le barre all’interno degli stessi cluster.
Sentiti libero di giocare con i valori di questi due argomenti per far apparire il grafico a barre esattamente come desideri.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in ggplot2:
Come ordinare le barre in un grafico a barre ggplot2
Come riorganizzare le barre in un grafico a barre in pila in ggplot2
Come cambiare i colori delle barre nel grafico Bart in pila in ggplot2