我正在尝试使用ggplot2库编写一个简单的绘图函数。但是调用ggplot找不到函数参数。
考虑一个data.frame调用means,它存储了两个要绘制的条件和两个平均值(条件将出现在X轴上,均值出现在Y轴上)。
library(ggplot2)
m <- c(13.8, 14.8)
cond <- c(1, 2)
means <- data.frame(means=m, condition=cond)
means
# The output should be:
# means condition
# 1 13.8 1
# 2 14.8 2
testplot <- function(meansdf)
{
p <- ggplot(meansdf, aes(fill=meansdf$condition, y=meansdf$means, x = meansdf$condition))
p + geom_bar(position="dodge", stat="identity")
}
testplot(means)
# This will output the following error:
# Error in eval(expr, envir, enclos) : object 'meansdf' not found
所以似乎ggplot正在调用eval,找不到参数meansdf。有谁知道我如何成功地将函数参数传递给ggplot?
(注意:是的,我可以直接调用ggplot函数,但是最后我希望使我的plot函数做更复杂的事情!:))
达令说
慕哥6287543