function residualplot(x,residuals,attrib,labx,laby,nid) %RESIDUALPLOT plots the residuals from a regression analysis versus x % % Required input arguments: % x : the vector to be plotted on de x-axis % residuals : the residuals % attrib : string identifying the used method = 'LS', 'MLR', 'LTS', 'MCDREG' % % Optional input arguments: % labx : a label for the x-axis (default: ' ') % laby : a label for the y-axis (default:' ') % nid : number of points to be identified in plots (default: 3) % % I/O: residualplot(x,residuals,attrib,labx,laby,nid) % % Last update: 07/04/2004 % set(gcf,'Name', 'Residual plot', 'NumberTitle', 'off'); n=length(residuals); if nargin<2 error('A required input argument is missing.') elseif nargin==3 labx=''; laby=''; nid=3; elseif nargin==4 laby=''; nid=3; elseif nargin==5 nid=3; end plot(x,residuals,'bo') xlabel(labx); ylabel(laby); ord=abs(residuals); [ord,ind]=sort(ord); ind=ind(n-nid+1:n); text(x(ind),residuals(ind),int2str(ind)); v=axis; quant=sqrt(chi2inv(0.975,1)); line([v(1),v(2)],[quant,quant],'color','r'); line([v(1),v(2)],[0,0],'color','r'); line([v(1),v(2)],[-quant,-quant],'color','r'); xlim=([min(x), max(x)]); ymin=min([-3 min(residuals)+0.05*min(residuals)]); ymax= max([3 max(residuals)+0.05*max(residuals)]); ylim([ymin,ymax]); title(attrib) box on