2012-03-14 175 views
3

我剛認識的facet_grid()一個奇怪的行爲在GGPLOT2 0.9,我想知道,如果有人可以解釋給我...奇怪的行爲()

採取以下df數據幀:

var <- sample(c("red", "blue"), 100, replace=TRUE) 
group <- sample(c("group1", "group2"), 100, replace=TRUE) 
df <- data.frame(var=factor(var), group=factor(group)) 

它看起來像:

var group 
1 red group2 
2 red group1 
3 red group1 
4 red group2 
5 red group2 
6 red group1 

如果我畫的group刻面的var條形圖,我得到一個比較奇怪的一套YV的alues:

ggplot(data=df, aes(x=var)) + geom_bar() + facet_grid(~group) 

plot1

,因爲如果我用y值似乎正確的我覺得奇怪的facet_wrap代替facet_grid

ggplot(data=df, aes(x=var)) + geom_bar() + facet_wrap(~group) 

plot2

而且,我能找回如果我在數據框中引入另一個虛擬變量,則使用facet_grid更正值:

df$tmp <- 1:nrow(df) 
ggplot(data=df, aes(x=var)) + geom_bar() + facet_grid(~group) 

plot3

那麼,是不是有些類型的錯誤,或者一種正常的行爲,我不明白?

+6

這是一個錯誤。請參閱此討論:https://groups.google.com/group/ggplot2/browse_thread/thread/5213ac35da6b36d4 – kohske 2012-03-14 09:59:44

+0

不應該是'facet_grid(。〜group)'而不是'facet_grid(〜group)'? – 2012-03-14 11:18:06

回答

3

這個bug在ggplot2的0.9.1版本中已經修復。

+0

太好了,謝謝! – juba 2012-05-21 07:58:31