该图在控制台中运行良好,但是当我将其编织到小插图文件中时,会抛出错误。 有人可以告诉我这个问题
#function which is running fine in console
plot.linreg <- function(x)
{
data1 <- cbind(x$fitval,x$residu)
data1 <- as.data.frame(data1)
names(data1) <- c("fitval","residu")
p <- ggplot(data1, aes(x=x$fitval, y=x$residu)) + geom_point(shape=1)+labs(x="Fitted values", y="Residuals") + ggtitle("Residuals vs Fitted") + geom_smooth(method = lm)
print(p)
sca_resvar <- x$resvar[1,1]
st <- sqrt(sca_resvar)
abs_residu <- abs(x$residu)/st
stadarres <- sqrt(abs_residu)
data2 <- cbind(x$fitval,stadarres)
data2 <- as.data.frame(data2)
names(data2) <- c("fitval","stadarres")
p2 <- ggplot(data2, aes(x=fitval, y=stadarres)) + geom_point(shape=1)+labs(x="Fitted values", y="|Standardized residuals|") + ggtitle("Scale-Location")
print(p2)
}
小插图中的代码:
linreg_mod <- linreg(Petal.Length~Sepal.Width+Sepal.Length, data=iris)
plot(linreg_mod)
显示的错误:
#> Error in xy.coords(x, y, xlabel, ylabel, log): 'x' is a list, but does not have components 'x' and 'y'