如果我根据卡方分布绘制我的多变量数据的mahalanobis距离的多变量qqplot,我期望伴随的qqline是截距为0且斜率为1的线。但是如果我运行以下代码:< / p>
scores<-matrix(rnorm(100*3),nc=3)
mah_scores = mahalanobis(scores,center=colMeans(scores),cov=cov(scores))
chi_scores = qchisq(ppoints(nrow(scores)),df=3)
qqplot(x=chi_scores,y=mah_scores,asp=1)
abline(a=0,b=1)
qqline(mah_scores, distribution = function(p) qchisq(p,df = 3),col="red")
我得到了下图:
我期望qqline(红色)与截距0和斜率1(黑色)的线相同。谁能解释为什么这两行不匹配?
(我正在运行R版本2.15.3(2013-03-01))
答案 0 :(得分:4)
默认情况下,qqline
在第一个和第三个四分位数中绘制一条线。请参阅帮助文件(?qqline
)。
#highlight first and third quartiles
points(quantile(chi_scores,c(.25,.75)),
quantile(mah_scores,c(.25,.75)),col="blue",cex=2,bg="blue",pch=21)