数据结构如下,绘制百分比堆积柱状图
# 加载必要的库
library(readxl)
library(ggplot2)
library(reshape2)
library(dplyr)
# 读取Excel文件
data <- read_excel("D:/Genus.xlsx")
# 检查数据的前几行以确保列名正确
head(data)
# 检查列名
colnames(data)
# 如果第一列名不是"Group",将其重命名为"Group"
if(colnames(data)[1] != "Group") {
colnames(data)[1] <- "Group"
}
# 将数据转换为长格式
data_long <- melt(data, id.vars = "Group", variable.name = "Genus", value.name = "Count")
# 计算每个分组中占比最高的所占比例
data_long <- data_long %>%
group_by(Group) %>%
mutate(Percentage = Count / sum(Count) * 100) %>%
ungroup()
max_percentage <- data_long %>%
group_by