如何使用R在散点图上绘制R平方值?
这似乎是一个简单的问题,所以我希望它是一个简单的答案.我正在绘制我的点并拟合线性模型,可以这样做.然后,我还要在图表上绘制一些摘要统计信息,例如R平方值.我似乎只能在命令行中获得R Squared值. 任何建议;我需要看ggplot还是其他东西?预先感谢.
This seems a simple question, so I hope its a simple answer. I am plotting my points and fitting a linear model, which I can do OK. I then want to plot some summary statistics, for example the R Squared value, on the plot also. I can only seem to get the R Squared value at the command line. Any advice; do I need to be looking at ggplot or anything else? Thanks in advance.
#Does the plot
plot(df$VAR1, df$VAR2)
#Adds the line
abline(lm(df$VAR2~df$VAR1), col="red")
#Shows stats on command line
summary(lm(df$VAR2~df$VAR1))
您可以滥用legend()
,因为它具有方便的逻辑位置:
You can abuse legend()
because it has the handy logical placement:
R> DF <- data.frame(VAR1=rnorm(100), VAR2=rnorm(100))
R> with(DF, plot(VAR1, VAR2))
R> abline(fit <- lm(VAR2 ~ VAR1, data=DF), col='red')
R> legend("topright", bty="n", legend=paste("R2 is",
+ format(summary(fit)$adj.r.squared, digits=4)))
在这里bty="n"
取消显示该框,您需要format()
来缩短显示.其他text()
很好,参数main=
和sub=
到plot()
也是如此.
Here bty="n"
suppresses the box, and you need format()
to shorten the display. Other text()
is good, as are arguments main=
and sub=
to plot()
.