【发布时间】:2013-01-16 07:49:47
【问题描述】:
我想创建一个“就像”ggplot2 的aes() 函数一样工作的函数。我卑微的尝试以“找不到对象”错误而失败:
library(ggplot2)
data <- data.frame(a=1:5, b=1:5)
# Works
ggplot(data) + geom_point() + aes(x=a, y=b)
my.aes <- function(x, y) { aes(x=x, y=y) }
# Fails with "Error in eval(expr, envir, enclos) : object 'x' not found"
ggplot(data) + geom_point() + my.aes(x=a, y=b)
实现my.aes()的正确方法是什么?这是为了封装和代码重用。
也许这是相关的,我只是还不知道如何: How to write an R function that evaluates an expression within a data-frame.
【问题讨论】:
-
不知道你在这里追求什么,但是docs.ggplot2.org/current/aes_string.html 呢?
-
@RomanLuštrik:谢谢,不知道。愿意将其转换为答案吗?