使用ggplot2创建堆积条形图

时间:2013-05-31 19:28:54

标签: r ggplot2

我正在尝试创建一个堆积条形图来显示每列x1-4总共14个观测值中有多少是-1,有多少是1。 我希望将它们全部放在同一个图表上 - 每列1个条形图。 这些数字可以视为因素。

数据:

    x1   x2     x3    x4
1   -1    1     1      1
2   -1    1     1     -1
3   -1    1     1      1
4   -1    1     1      1
5   -1   -1    -1     -1
6    1    1     1      1
7   -1    1     1      1
8   -1    1    -1      1
9   -1    1    -1      1
10  -1    1     1      1
11  -1   -1    -1      1
12  -1    1    -1     -1
13  -1   -1    -1      1
14  -1   -1    -1     -1

1 个答案:

答案 0 :(得分:2)

只需融化或堆叠您的data.frame:

DF <- read.table(text="x1   x2     x3    x4
1   -1    1     1      1
2   -1    1     1     -1
3   -1    1     1      1
4   -1    1     1      1
5   -1   -1    -1     -1
6    1    1     1      1
7   -1    1     1      1
8   -1    1    -1      1
9   -1    1    -1      1
10  -1    1     1      1
11  -1   -1    -1      1
12  -1    1    -1     -1
13  -1   -1    -1      1
14  -1   -1    -1     -1",header=TRUE)

DF.stack <- stack(DF)

geom_bar默认使用stat_bin。没有必要总结一下自己。

library(ggplot2)
ggplot(DF.stack,aes(x=ind,fill=factor(values))) + geom_bar()

如果您想要数字,请使用table(DF.stack)