R将variables列索引传递给ggplot2

我试图将列索引传递给ggplot作为我将重复使用的函数的一部分。 喜欢:

myplot <- function(df){ ggplot(df, aes(df[, 1], df[, 2])) + geom_point() } 

我将始终使用第一列作为我的xvariables,第二列作为我的yvariables,但列名称在数据集之间更改。 我已经搜遍了所有的想法?

编辑:

这是我使用的答案:

 require(ggplot2) myplot <- function(df){ ggplot(df, aes_string(colnames(df)[1], colnames(df)[2])) + geom_point() } 

您可以使用aes_string替代aes来传递string来代替使用对象,即:

 myplot = function(df, x_string, y_string) { ggplot(df, aes_string(x = x_string, y = y_string)) + geom_point() } myplot(df, "A", "B") myplot(df, "B", "A")