function [Regression, f] = GetLinearRegression(x,y,varargin) if isempty(varargin) flag=0; f=0; else flag=1; g = varargin{1}; end j=1; for i=1:length(x) if ~isnan(x(i)) && ~isnan(y(i)) x1(j)=x(i); y1(j)=y(i); j=j+1; end end if exist('x1') [r, p] = corrcoef(x1,y1); Regression.R=r(1,2); Regression.Rsquared=r(1,2)^2; Regression.Pvalue=p(1,2); if flag [a] = polyfit(x1,y1,1); f=polyval(a,x1); [r2, rmse] = rsquare(y1,f); Regression.a0=a(2); Regression.a1=a(1); % f(x) = a0 + a1*x Regression.x2=[g.XLim(1) g.XLim(2)]; Regression.y2=Regression.a0+Regression.a1*Regression.x2; end else Regression.R=NaN; Regression.Rsquared=NaN; Regression.Pvalue=NaN; end % p3=plot(x2,y2,'k-'); % p3.LineWidth=2; % deltaY=(g.YLim(2)-g.YLim(1))/10; % deltaX=(g.XLim(2)-g.XLim(1))/10; % t1=text((g.XLim(1)+3*deltaX), (g.YLim(2)-4*deltaY),['p-value : ' num2str(round(Pvalue,3))]); % t1.FontSize=fontsize.axis; t1.FontWeight='bold'; % t2=text((GCA.XLim(1)+3*deltaX), (GCA.YLim(2)-3*deltaY),['r-squared : ' num2str(round(Rsquared,3))]); % t2.FontSize=fontsize.axis; t2.FontWeight='bold'; % t3=text((g.XLim(1)+3*deltaX), (g.YLim(2)-2*deltaY),['r : ' num2str(round(r(1,2),3))]); % t3.FontSize=15; t3.FontWeight='bold'; %