MATLAB: Hi, I want to include the correlation coefficient on each of the subplots of GPLOTMATRIX.

plotmatrixStatistics and Machine Learning Toolbox

My problem is how do I put some text on to the subplots.
This is one of my unsuccessful attempts –
X = randn(200,3);
r = corrcoef(X);
return
[H,AX,BigAx] = gplotmatrix(X,[],[],[0.5 0.5 1],[],1,'off','none');
set(AX(1,2));
plot(AX(1,2),[0],[0],'xk');
text(.1,.9,['r = ',num2str(r(1,2),2)],'units','norm');
thanks..

Best Answer

Warwick - I don't have the Statistics and Machine Learning Toolbox (so can't validate the following), but in your code you do
[H,AX,BigAx] = gplotmatrix(X,[],[],[0.5 0.5 1],[],1,'off','none');
where AX is an array of handles to all of the axes. The subsequent line of code
set(AX(1,2));
seems incomplete. What are you trying to set for this axes? Perhaps you intend to set AX(1,2) as the current axes so that the text is written to it. Try using axes instead as
axes(AX(1,2));
% now draw and write the text
plot(AX(1,2),[0],[0],'xk');
text(.1,.9,['r = ',num2str(r(1,2),2)],'units','norm');