这是它自己的工作代码。
ggplot(stkPres, aes(x = AAPL, y = AAPL.ret)) + geom_point()
下面是我对一个函数的尝试:
graphic.stock.vs.return <- function(abbrev) {
ggplot(stkPres, aes(x = abbrev, y = abbrev.ret)) + geom_point()
}
graphics .stock.vs.return(AAPL)将以与ggplot(stkPres, aes(x = AAPL, y = AAPL.ret)) + geom_point()完全相同的方式绘制图。
我需要对我的函数做些什么才能使它正常工作?
如果你想以不加引号的方式传递值,你可以这样做:
library(ggplot2)
graphic.stock.vs.return <- function(abbrev) {
abbr <- deparse(substitute(abbrev))
ggplot(stkPres, aes(x = .data[[abbr]],
y = .data[[paste0(abbr, '.ret')]])) + geom_point()
}
graphic.stock.vs.return(AAPL)
如果你要传递变量作为字符串。
graphic.stock.vs.return <- function(abbr) {
ggplot(stkPres, aes(x = .data[[abbr]],
y = .data[[paste0(abbr, '.ret')]])) + geom_point()
}
graphic.stock.vs.return("AAPL")