Come creare grafici a torta in ggplot2 (con esempi)
Un grafico a torta è un tipo di grafico a forma di cerchio e utilizza le sezioni per rappresentare le proporzioni di un intero.
Questo tutorial spiega come creare e modificare grafici a torta in R utilizzando la libreria di visualizzazione dei dati ggplot2 .
Come creare un grafico a torta di base
Il codice seguente mostra come creare un grafico a torta di base per un set di dati utilizzando ggplot2:
library (ggplot2) #create data frame data <- data.frame(" category " = c('A', 'B', 'C', 'D'), " amount " = c(25, 40, 27, 8)) #create pie chart ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 )
Come modificare l’aspetto del grafico a torta
Il grafico a torta predefinito in ggplot2 è piuttosto brutto. Il modo più semplice per migliorare l’aspetto è utilizzare theme_void() , che rimuove lo sfondo, la griglia e le etichette:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + theme_void()
Possiamo migliorare ulteriormente l’aspetto del grafico aggiungendo etichette all’interno delle sezioni:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) + labs(x = NULL, y = NULL, fill = NULL)
Possiamo personalizzare ulteriormente il grafico specificando i nostri colori esadecimali da utilizzare per le sezioni con l’argomento scale_fill_manual() :
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) + labs(x = NULL, y = NULL, fill = NULL) + theme_classic() + theme(axis.line = element_blank(), axis.text = element_blank(), axis.ticks = element_blank()) + scale_fill_manual(values=c(" #FF5733 ", " #75FF33 ", " #33DBFF ", " #BD33FF "))
Suggerimento: utilizza questo selettore di colori esadecimali per trovare combinazioni di codici colore esadecimali che stanno bene insieme.
Puoi anche personalizzare i colori delle fette semplicemente scegliendo una delle scale di colori del birraio . Ad esempio, ecco come appare la scala di colori “blues”:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) + labs(x = NULL, y = NULL) + theme_classic() + theme(axis.line = element_blank(), axis.text = element_blank(), axis.ticks = element_blank()) + scale_fill_brewer(palette=" Blues ")
Risorse addizionali
Come creare un boxplot raggruppato in R utilizzando ggplot2
Come creare una mappa termica in R utilizzando ggplot2
Come creare un diagramma di Gantt in R utilizzando ggplot2