3

如果我针对卡方分布绘制我的多元数据的马氏距离的多元 qqplot,我希望随附的 qqline 是一条截距为 0 且斜率为 1 的线。但如果我运行以下代码:

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")

我得到下图:

qqplot 与 abline 和 qqline

我预计 qqline(红色)与截距 0 和斜率 1(黑色)的线相同。谁能向我解释为什么这两条线不匹配?

(我正在运行 R 版本 2.15.3 (2013-03-01))

4

1 回答 1

5

默认情况下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)

在此处输入图像描述

于 2013-03-16T13:31:18.840 回答