43

I have a defined a variable named response. this variable will be passed to facet_wrap() in ggplot package

 response<-"job"

When i specify variable directly in facet_wrap()

e.g

   ggplot(data,aes(job,fill=class )) + geom_bar() +facet_wrap(~job)

it gives required plot

But when i specifying response variable in facet_wrap()

 ggplot(data,aes(job,fill=reponse))+ geom_bar() +  facet_wrap(~get(paste(response)))

i get error

  At least one layer must contain all variables used for facetting

Is there way where facet_wrap can accept variable name from response variable instead writing variable name directly in it

4

1 回答 1

78

(将@kohske 的评论变成答案,以便它可以被接受和“关闭”):

facet_wrap(as.formula(paste("~", response)))
于 2012-10-02T16:40:52.857 回答