簡體   English   中英

ggplot2 position ='dodge'生成太寬的條形圖

[英]ggplot2 position='dodge' producing bars that are too wide

我有興趣生成一個position ='dodge'和fill =某個因子的直方圖(即每個bar / group中不同子組的並排條),但是ggplot2給了我類似於這里的第一個圖 ,它有一個最右邊的酒吧太寬,沒有為空組保留空間,我想要。

這是一個簡單的案例:

df = data.frame(a=c('o','x','o','o'), b=c('a','b','a','b'))
qplot(a, data=df, fill=b, position='dodge')

ggplot geom_bar - 條形太寬我得到了這個想法,雖然它在技術上產生了一個相同寬度的條,但保留空組的空間:

ggplot(df, aes(x=a, fill=a))+
geom_bar(aes(y=..count../sum(..count..))) + 
facet_grid(~b,scales="free",space="free")

我如何實現我想要的目標? 提前致謝。

ggplot的默認選項產生了我認為你描述的內容。 scales="free"space="free"選項與你想要的相反,所以只需從代碼中刪除它們。 此外, geom_bar的默認stat geom_bar是通過計數進行聚合,因此您無需明確指定您的統計信息。

ggplot(df, aes(x=a, fill=a)) + geom_bar() + facet_grid(~b)

在此輸入圖像描述

暫無
暫無

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

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