R语言-两种方法绘制百分比图

library(ggplot2) #加载ggplot2包
library(dplyr) #加载dplyr包
library(ggstatsplot) #加载ggstatsplot包
diamonds2 <- filter(diamonds, color %in% c('J', 'H')) #选取diamonds数据集中color为J和H的数据,保存为diamonds2

#使用ggplot包的geom_bar函数
diamonds2 %>% 
  ggplot(aes(x = clarity, fill = color)) + #x轴的分类为clarity,填充颜色为color(J和H)
  geom_bar(position = position_fill()) + 
  scale_fill_brewer(palette = 'Set3') + #设置颜色板
  theme_classic() + #设置主题
  labs(y = 'Percent') + #设置y轴名为‘Percent’
  coord_flip() #旋转坐标轴

R语言-两种方法绘制百分比图_第1张图片

#使用ggstatsplot的ggbarstats函数
diamonds2 %>% 
  ggbarstats(main = color, condition = clarity,
             bar.proptest = F, #不显示p值的显著与否
             palette = 'Set3',#设置颜色板
             results.subtitle = F #副标题不显示统计结果
             ) + 
  coord_flip() #旋转坐标轴

R语言-两种方法绘制百分比图_第2张图片

上面展示了两种方法来绘制百分比图, 从效果来看,ggstatsplot的ggbarstats()函数更好,不仅直接展示了每个clarity里面各个color的占比,还在图形的左侧展示了每个clarity的样本量。比geom_bar()包含的信息量更多,图形也更加美观,推荐使用ggstatsplot包的ggbarstats()函数!

你可能感兴趣的:(R语言-两种方法绘制百分比图)