我正在使用ggplot构建一个图,但我事先并不知道y列的名称。相反,y列的名称包含在变量yname中。这显然不起作用:
ggplot(df, aes(x=date, y=yname))
因为ggplot在df中查找一个字面名为“yname”的列。如何将y列的名称作为变量传递给ggplot?
答案 0 :(得分:4)
使用aes_string
:
library(ggplot2)
yname <- "a"
df <- data.frame(x=runif(10), a=runif(10))
ggplot(df, aes_string(x="x", y=yname)) + geom_point()