ggplot堆积条形图,x值,没有y / fill值

时间:2014-06-28 19:28:14

标签: r ggplot2

我正在尝试制作一个堆积条形图,其中X轴为时间,Y轴为数量,填充颜色为某些特征。

我的数据看起来像这样:

    > base
  Number                                         Mut Time Percent
1   117                                    22:A->G     2   81.81
2    13                                    24:G->A     2    9.09
3    10 22:A->G 24:G->A 108:G->A 158:G->A 162:G->A     2    6.99
4     1                            22:A->G 24:G->A     2    0.69
5    32                                    24:G->A     3   94.11
6     1                           24:G->A 162:G->T     3    2.94
7     1                            24:G->A 82:G->T     3    2.94

当我使用代码在ggplot中执行堆积条形图时:

ggplot(base,aes(x = Time, fill = Mut, y = Percent)) +  geom_bar(stat='identity') + theme(legend.key.size = unit(.5, "cm")) + ylab("Number")

我得到一个如下图:

http://imgur.com/32XCkTm,yfCAJsx#0

我的问题是我希望time = 1和time = 4的值为零。

类似的东西:

http://imgur.com/32XCkTm,yfCAJsx#1

有没有办法可以做到这一点?现在我只是在数据中为时间1和4添加0值,并将我的填充特征(Mut)添加到已经显示在数据中的那个:

> base
  Reads                                         Mut Time Percent
1     0                                    22:A->G     1    0.00
2   117                                    22:A->G     2   81.81
3    13                                    24:G->A     2    9.09
4    10 22:A->G 24:G->A 108:G->A 158:G->A 162:G->A     2    6.99
5     1                            22:A->G 24:G->A     2    0.69
6    32                                    24:G->A     3   94.11
7     1                           24:G->A 162:G->T     3    2.94
8     1                            24:G->A 82:G->T     3    2.94
9     0                                    22:A->G     4    0.00

我的问题是我不想继续搜索数据中已有的功能(Mut)。有没有办法让ggplot自动为时间= 1和时间= 4设置x值,没有条形图而不必为数据添加值?我一直在寻找几个小时,无法找到任何答案。

感谢。

1 个答案:

答案 0 :(得分:1)

添加+ scale_x_discrete(limits = 1:4)

enter image description here