簡體   English   中英

ggplot堆疊的條形圖,具有x值,無y / fill值

[英]ggplot stacked bar plot with x value and no y/fill value

我正在嘗試以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

我的問題是我希望時間= 1和時間= 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自動將time = 1和time = 4的x值放到沒有條形圖的情況下,而不必向數據中添加值? 我一直在搜索數小時,找不到任何答案。

謝謝。

+ scale_x_discrete(limits = 1:4)

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM