使用R在ggplot中传递字符串变量facet_wrap()

时间:2012-06-14 07:14:55

标签: r ggplot2

我有一个名为response的变量。 这个变量将传递给ggplot包中的facet_wrap()

 response<-"job"

当我直接在facet_wrap()

中指定变量时

例如

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

它提供了必要的情节

但是当我在facet_wrap()

中指定响应变量时
 ggplot(data,aes(job,fill=reponse))+ geom_bar() +  facet_wrap(~get(paste(response)))

我收到错误

  At least one layer must contain all variables used for facetting

是否有方法facet_wrap可以接受来自响应变量的变量名称,而不是直接在其中编写变量名称

1 个答案:

答案 0 :(得分:59)

(将@ kohske的评论转化为答案,以便可以接受并“关闭”):

facet_wrap(as.formula(paste("~", response)))