Often I use ggplot2 in my work and build wrapper functions to speed up my work flow. The use of the non-standard evaluation (NSE) aes
forces me to use the actual variable names rather than passing character strings. So I copy and rename dataframes and variable names to appease ggplot2. There's got to be a better way. How can I make ggplot2 accept unknown dataframes and column names via a function wrapper without replicating the dataframe and using generic column names?
This works:
ggplot(mtcars, aes(x=mpg, y=hp)) +
geom_point()
This does not:
FUN <- function(dat, x, y) {
ggplot(dat, aes(x = x, y = y)) +
geom_point()
}
FUN(mtcars, "mpg", "hp")