0

我正在尝试保存使用以下代码创建的绘图,但始终得到一个空的 .png 文件。我重用了一些现有代码来创建绘图,并导入 tidyverse 以访问许多函数,包括 ggsave()。为什么 ggsave() 不创建带有散点图和重叠线的 png 文件,这两者都在我的 Rstudio 图形窗口中可见?为什么它却始终创建一个空的 .png 文件?我究竟做错了什么?

    # Regress 10-year S&P return versus Fwd_EY and Fwd_EY^2

plot(data$Fwd_EY, data$SPRet, pch = 16, col = "blue", xlab = "E_t+1/P", ylab = "10-year Return")
fit <- lm(data$SPRet ~ data$Fwd_EY)

# Use predict to calculate predicted returns
predict_ret <- predict(fit, data) 

# abline doesn't work; plot predicted returns as a separate line
lines(data$Fwd_EY, predict_ret, col = "gold4", type = "b", cex = 0.7) 

#Now save the plot using ggsave
ggsave(filename = "C:/Temp/SP10YrVsForwardPE.png", device = png())
dev.off()

真挚地

托马斯飞利浦

4

1 回答 1

1

尝试使用

# Instantiate the plot object
png('C:/Temp/SP10YrVsForwardPE.png')

# Regress 10-year S&P return versus Fwd_EY and Fwd_EY^2
plot(data$Fwd_EY, data$SPRet, pch = 16, col = "blue", xlab = "E_t+1/P", ylab = "10-year Return")
fit <- lm(data$SPRet ~ data$Fwd_EY)

# Use predict to calculate predicted returns
predict_ret <- predict(fit, data) 

# abline doesn't work; plot predicted returns as a separate line
lines(data$Fwd_EY, predict_ret, col = "gold4", type = "b", cex = 0.7) 

dev.off()

它利用内置方法而不是 ggsave。

于 2020-06-21T05:09:22.353 回答