制作比例堆叠条

时间:2017-05-22 11:59:00

标签: r ggplot2 bar-chart

我有一个数据框example,有两个变量V1和V2,都是虚拟变量。我想创建一个堆积比例图,其中V1为x轴。

我尝试了以下操作,但图表没有显示:

library(ggplot2)
library(plyr) 
library(dplyr)

example<-as.data.frame(cbind(c(0,0,0,0,1,1,1,0,1),c(0,1,0,0,1,0,0,0,1)))
class(example$V1)
class(example$V2)

ce = ddply(example, "V1", mutate, percent_v2 = sum(V2)/length(V2) * 100)
ggplot(ce, aes(x=V1, y=percent_v2, fill=V2),geom_bar(stat='identity'))

我认为fill=V2可能是错误的,因为V1和V2都是整数,所以我尝试了as.character(V2),但这也不行。

1 个答案:

答案 0 :(得分:1)

尝试:

 ggplot(ce, aes(x=V1, y=percent_v2, fill=V2))+geom_bar(stat="identity")

增加:

enter image description here

    V1 V2 percent_v2
 1  0  0         20
 2  0  1         20
 3  0  0         20
 4  0  0         20
 5  0  0         20
 6  1  1         50
 7  1  0         50
 8  1  0         50
 9  1  1         50