Sup
请考虑以下几行:
数据
df=data.frame(
prod=sample(1:30,1000,replace=TRUE),mat=sample(c('yes','no'),fj=sample(c(1,2),replace = TRUE)
)
情节
df %>%
group_by(mat,prod,fj) %>%
summarise(n = n()) %>%
arrange(desc(n)) %>%
slice(1:5) %>%
ggplot(aes(x = reorder(prod,n),y = n)) +
geom_col(fill = RColorBrewer::brewer.pal(3,'Dark2')[2],colour = "grey",alpha = 0.8) +
labs(x = "Prod",y = "Qnt") +
scale_y_continuous(labels = scales::comma) +
coord_flip() +
facet_wrap(fj ~ mat,scale="free") +
theme_minimal()
现在,如果我删除fj
变量,如
df %>%
group_by(mat,prod) %>%
summarise(n = n()) %>%
arrange(desc(n)) %>%
slice(1:5) %>%
ggplot(aes(x = reorder(prod,y = "Qnt") +
scale_y_continuous(labels = scales::comma) +
coord_flip() +
facet_wrap(~ mat,scale="free") +
theme_minimal()
slice(1:5)
完成了任务,我得到了:
问题
当存在3个以上变量时,为什么slice
和reorder
似乎无法正常工作,我应该怎么做才能将第一个图限制为每行5条?