如何在Matlab中的plotmatrix的每个子图中绘制回归线?

时间:2013-12-06 19:51:51

标签: matlab regression scatter-plot

我有一个散点矩阵(plotmatrix)

p1 = plotmatrix(M);

但是我需要绘制一条回归线,并在图的上半部分的每个子图中绘制R平方。关于如何做到这一点的任何想法??

像corrplot.m这样的东西,但我有一个旧版本的Matlab ...

谢谢!

1 个答案:

答案 0 :(得分:2)

有一个corrplot.m on the File Exchange的版本,“将相关系数与置信限制相关联”。这听起来很像corrplot in the MATLAB Econometrics Toolbox的版本。

您可以手动使用corrcoeff并在子图上手动绘制线条。要获取使用plotmatrix创建的子图的句柄,请引用长输出语法:

[H,AX,BigAx,P,PAx] = plotmatrix(...) returns a matrix of handles
to the objects created in H, a matrix of handles to the individual
subaxes in AX, a handle to big (invisible) axes that frame the
subaxes in BigAx, a matrix of handles for the histogram plots in
P, and a matrix of handles for invisible axes that control the
histogram axes scales in PAx.

由于您只需要轴手柄来执行此操作,只需输出AX以及其他所需的内容:

[p1,AX] = plotmatrix(M)

这将允许您在每个子图的轴上绘图:

for ii=1:size(AX,1),
    for jj=1:size(AX,2),
        if ii == jj, continue; end
        hold(AX(ii,jj),'on')
        plot(AX(ii,jj),...)
    end
end