Come visualizzare le percentuali sull'istogramma in ggplot2
Puoi utilizzare la seguente sintassi di base per visualizzare le percentuali sull’asse y di un istogramma in ggplot2:
library (ggplot2) library (scales) #create histogram with percentages ggplot(data, aes (x = factor (team))) + geom_bar( aes (y = (..count..)/ sum (..count..))) + scale_y_continuous(labels=percent)
Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.
Esempio 1: istogramma di base con percentuali
Il codice seguente mostra come creare un istogramma per variabili categoriali con percentuali visualizzate sull’asse Y:
library (ggplot2) library (scales) #define data frame data <- data. frame (team = c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C') , points = c(77, 79, 93, 85, 89, 99, 90, 80, 68, 91, 92)) #create histogram with percentages ggplot(data, aes (x = factor (team))) + geom_bar( aes (y = (..count..)/ sum (..count..))) + scale_y_continuous(labels=percent)
Esempio 2: istogramma con percentuali (rimuovere i decimali)
Puoi anche utilizzare l’argomento precisione per visualizzare solo numeri interi come percentuali sull’asse y:
library (ggplot2) library (scales) #define data frame data <- data. frame (team = c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C') , points = c(77, 79, 93, 85, 89, 99, 90, 80, 68, 91, 92)) #create histogram with percentages ggplot(data, aes (x = factor (team))) + geom_bar( aes (y = (..count..)/ sum (..count..))) + scale_y_continuous(labels = scales :: percent_format(accuracy = 1L ))
Esempio 3: istogramma personalizzato con percentuali
Il codice seguente mostra come creare un istogramma con percentuali visualizzate sull’asse Y e un titolo personalizzato, etichette dell’asse e colori:
library (ggplot2) library (scales) #define data frame data <- data. frame (team = c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C') , points = c(77, 79, 93, 85, 89, 99, 90, 80, 68, 91, 92)) #create histogram with percentages and custom aesthetics ggplot(data, aes (x = factor (team))) + geom_bar( aes (y = (..count..)/ sum (..count..)), fill = ' lightblue ') + scale_y_continuous(labels=percent) + labs(title = ' Breakdown by Team ', x = ' Team ', y = ' Percent of Total ') + theme_minimal()
Correlato: Una guida completa ai migliori temi ggplot2
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni con gli istogrammi in R:
Come modificare il numero di contenitori nell’istogramma in R
Come tracciare più istogrammi in R
Come creare un istogramma di frequenza relativo in R