Cirkeldiagrammen maken in ggplot2 (met voorbeelden)
Een cirkeldiagram is een soort cirkelvormig diagram en gebruikt segmenten om de verhoudingen van een geheel weer te geven.
In deze zelfstudie wordt uitgelegd hoe u cirkeldiagrammen in R kunt maken en bewerken met behulp van de ggplot2- gegevensvisualisatiebibliotheek.
Hoe u een basiscirkeldiagram maakt
De volgende code laat zien hoe u met ggplot2 een basiscirkeldiagram voor een gegevensset maakt:
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 )
Hoe u het uiterlijk van het cirkeldiagram kunt wijzigen
Het standaardcirkeldiagram in ggplot2 is behoorlijk lelijk. De eenvoudigste manier om het uiterlijk te verbeteren is door thema_void() te gebruiken, waarmee de achtergrond, het raster en de labels worden verwijderd:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + theme_void()
We kunnen het uiterlijk van het diagram verder verbeteren door labels in de segmenten toe te voegen:
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)
We kunnen het diagram nog verder aanpassen door onze eigen hexadecimale kleuren op te geven die we voor de segmenten moeten gebruiken met het scale_fill_manual() argument:
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 "))
Tip: Gebruik deze hex-kleurkiezer om combinaties van hex-kleurcodes te vinden die er goed uitzien.
U kunt de schijfkleuren ook aanpassen door eenvoudigweg een van de kleurenschalen van de brouwer te kiezen. Zo ziet de kleurenschaal “blauw” er bijvoorbeeld uit:
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 ")
Aanvullende bronnen
Hoe een gegroepeerde boxplot in R te maken met ggplot2
Hoe je een heatmap in R maakt met ggplot2
Hoe u een Gantt-diagram in R maakt met ggplot2