おもしろそうなコードを 教えてもらった。
require(ggplot2) DS <- data.frame(speed=rnorm(10), dist=rnorm(10)) f <- function(DS, x, y) { aes <- eval(substitute(aes(x, y), list(x = substitute(x), y = substitute(y)))) p <- ggplot(DS, aes) + geom_point() } p <- f(DS, speed, dist) p
これはちょっと何かに応用できそうですね。
require(ggplot2) DS <- data.frame(speed=rnorm(10), dist=rnorm(10)) f <- function(DS, x, y, geom, opts=NULL) { aes <- eval(substitute(aes(x, y), list(x = substitute(x), y = substitute(y)))) p <- ggplot(DS, aes) + geom + opts } p <- f(DS, speed, dist, geom_point()) p
こうやって遊んだりもできそう。