我的data.frame有一个学校类型列表作为变量,其类别为-高中,中学,小学后和小学。我的目标是在x轴上绘制这四种类型(高,中,初级后和初级)。每种类型都有五个条形,可显示学生人数。因此,“高中类型”中将有五个分组的酒吧,分别是高年级,中年级,小学年级,KG和所有学生的总和。类似地,中学将有五个分组的酒吧,其中高中年级学生为零(因为中学没有高年级),但中,小学,幼稚园和全部的学生。
我有融化的数据,然后使用ggplot,然后使用geom_bar,然后使用带有position_dodge2的geom_text,
sit2 <- sit %>% select(Name, Type, KG_St_Total, PS_Total, Mid_Total, High_Total)
sit3 <- sit2 %>% mutate(Grand = KG_St_Total + PS_Total+ Mid_Total + High_Total)
sit4.long <- melt(sit3)
head(sit4.long)
graph <- ggplot(sit4.long, aes(Type, value, fill=variable)) +
geom_bar(stat="identity", position = "dodge")
graph +
geom_text(aes(label = ..y..), fun.y = 'sum', stat = 'summary',
col = 'black', angle=90,
position = position_dodge2(width = 0.9, preserve = "single"),
size=2.5, hjust=0, vjust=0.3) +
scale_fill_discrete(name = "Students",
labels = c("KG", "Priimary", "Middle","High", "Total"))
我想在x轴上显示类型(高,中,初等,初等)。这些类型中的每一个类型都将填充每个班级的学生人数(包括每个类型的学生总数),并显示为五个条形。 y轴将给出值(即学生人数。