查看原文
其他

一行代码优雅的结合饼图与甜甜圈图

ANERYAN R语言数据分析指南 2023-06-15

最近有朋友问一张图的画法学名叫旭日图,类似于多层甜甜圈图如下图所示,但是麻烦在于要添加分组频率文本方向比较难处理,今天来介绍如何一行代码来解决此问题,绘制饼状甜甜圈图,使用「webr」包可以自动添加频率信息,下面来看实际案例

安装并加载R包

package.list=c("tidyverse","webr",)

for (package in package.list) {
  if (!require(package,character.only=T, quietly=T)) {
    install.packages(package)
    library(package, character.only=T)
  }
}

加载数据

df <- ToothGrowth %>% group_by(supp,dose) %>% summarise(n = sum(len))
  supp   dose     n
  <fct> <dbl> <dbl>
1 OJ      0.5 132. 
2 OJ      1   227  
3 OJ      2   261. 
4 VC      0.5  79.8
5 VC      1   168. 
6 VC      2   261.

基本饼图

PieDonut(df,aes(supp,dose,count=n))

交换一下内外层数据

PieDonut(df,aes(dose,supp,count=n))
  • ratioByGroup = FALSE显示总体的频率
PieDonut(df,aes(dose,supp,count=n),ratioByGroup = FALSE)

explode炸开图形内层

PieDonut(df,aes(dose,supp,count=n),explode=2)

explodeDonut=TRUE内外层都炸开

PieDonut(df,aes(dose,supp,count=n),explode=2,explodeDonut=TRUE)

设置内外半径

PieDonut(df,aes(dose,supp,count=n),r0 = 0.45, r1 = 0.9)

可以看到通过「webr」可以很轻松的将饼图与甜甜圈图结合起来

欢迎大家扫描下方二位码加入「QQ交流群」,与全国各地上千位小伙伴交流

「关注下方公众号下回更新不迷路」,如需要加入微信交流群可添加小编微信,请备注单位+方向+姓名

MetBrewer一个让你爱不释手的调色板


ggtree优雅的绘制系统发育树(3)


ggtree优雅的绘制系统发育树(2)


ggtree优雅的绘制系统发育树(1)


ggplot2优雅的绘制分类条形图


ggplot2优雅的绘制径向条形图


ggplot2优雅的绘制配对箱


ggplot2优雅的绘制曲面条形图


ggplot2优雅的绘制哑铃图(增强版)


ggplot2优雅绘制小清新版箱线图


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存