2012-03-14 174 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