R GGPLOT2重叠和函数未找到对象?

R GGPLOT2重叠和函数未找到对象?,r,ggplot2,R,Ggplot2,我希望在不提供数据框的情况下,我能从上下文中找到错误的线索,但如果有必要,我可以,但最终我想利用lapply在多个Y和同一个X上创建多个箱线图,但得到以下错误,但在我的CMRecructDat data.frame中肯定有Term: aes_字符串中的错误(x=术语,y=RecVar,fill=术语): 找不到对象“Termed” RecVar <- CMrecruitdat[,c("Req.Open.To.System.Entry", "Req.Open.To.Hire", "Tenur

我希望在不提供数据框的情况下,我能从上下文中找到错误的线索,但如果有必要,我可以,但最终我想利用lapply在多个Y和同一个X上创建多个箱线图,但得到以下错误,但在我的CMRecructDat data.frame中肯定有Term:

aes_字符串中的错误(x=术语,y=RecVar,fill=术语): 找不到对象“Termed”

RecVar <- CMrecruitdat[,c("Req.Open.To.System.Entry", "Req.Open.To.Hire", "Tenure")]

BP <- function (RecVar){
  require(ggplot2)
  ggplot(CMrecruitdat, aes_string(x=Termed, y=RecVar, fill=Termed))+
     geom_boxplot()+
     guides(fill=false)
}

lapply(RecVar, FUN=BP)

RecVar如果使用
aes\u string
,则应传递字符串而不是向量,并对所有字段使用字符串

RecVar <- CMrecruitdat[,c("Termed", "Req.Open.To.System.Entry", "Req.Open.To.Hire", "Tenure")]

BP <- function (RecVar){
  require(ggplot2)
  ggplot(RecVar, aes_string(x="Termed", y=RecVar, fill="Termed"))+
     geom_boxplot()+
     guides(fill=false)
}

lapply(names(RecVar), FUN=BP)

RecVar-Nope。因为
aes()
需要符号,而不会计算这些参数。如果您想编写调用
ggplot
的函数,最好还是坚持使用
aes\u string()
。它实际上与aes一起工作……但没有将名称读入Y轴,而是对这三个函数重复“RecVar”,但它确实创建了这三个函数。我已经更新并尝试了您的方法,它给了我相同的errorNevermind,我们正在使用字符串和所需的报价。