表示散点图中变量的名称

时间:2017-06-14 11:35:44

标签: r plot ggplot2

我需要编写一个绘制变量图的函数。问题是它没有打印变量的名称。

visual<-function( x , y){      
   df<-cbind(x,y)
   df<-scale(df, center = TRUE, scale = TRUE)
   df<-as.data.frame(df)
   ggpairs(df, columns=1:2,xlab = colnames(df)[1],ylab =colnames(df)[2])
}

如果我们有这些载体:

a <- c(128.095014,  71.430997,  88.704595,  48.180638)
b <- c(10.584888,  10.246740,   4.422322,   9.621246)
visual(a,b)

这有什么问题?

1 个答案:

答案 0 :(得分:1)

您可以使用substitute获取传递给函数的对象的名称。

visual<-function(x, y){
  xname <- substitute(x)
  yname <- substitute(y)

  df<-cbind(x,y)

  df<-scale(df, center = TRUE, scale = TRUE)

  df<-as.data.frame(df)

  names(df) <- c(xname, yname)

  GGally::ggpairs(df, columns=1:2, xlab = colnames(df)[1], ylab =colnames(df)[2])
}

b<-c(128.095014,  71.430997,  88.704595,  48.180638)
a<-c(10.584888,  10.246740,   4.422322,   9.621246)

visual(a,b)

输出

ggpairs plot output