你可以在导入数据后,使用dplyr包中的mutate()函数将原始数据转化为百分比数据,然后再进行绘图。例如:

library(dplyr)

# 导入原始数据,并将其转化为百分比
Phylum.t <- Phylum.t %>%
  group_by(Sample) %>%
  mutate(value_perc = value/sum(value) * 100)

# 绘制堆积柱状图
p5 <- p4 + 
  geom_facet(panel = 'Relative abundance (%)', data = Phylum.t, geom = geom_bar, 
             mapping = aes(value_perc, fill = Phylum), color = 'gray30',
             orientation = 'y', width = 0.8, stat = 'identity') + 
  scale_fill_manual(values = c(palette))

在代码中,我们使用group_by()和mutate()函数将数据按照样品进行分组,并将每个分类单元的数量转化为百分比。在绘图时,我们将value_perc作为x轴数据,并保持其他参数不变。

R语言ggplot2绘制百分比堆积柱状图

原文地址: https://www.cveoy.top/t/topic/nZTN 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录