/* InteractiveCorr applet allows the user to select an ordered pair by clicking on a carteasean co-ord grid computes R square and least squares regression line Version 1.0 - 7 Oct 1999 Chris Thiel */ import java.lang.*; import java.awt.*; import java.applet.Applet; import java.awt.Graphics; import java.awt.Color; import java.awt.Event; import java.util.*; public class guessCorr extends Applet { int MAX=50; int n=0; String message=null; int x[] = new int[MAX]; int y[] = new int[MAX]; float xMean, yMean; double gb0,gb1; float B0, B1, R, R_square,Var_x,Var_y, SSR, gRes; int fudge =7; int i=0; Color buttonColor; int buttonWidth=50; int buttonHeight=20; Rectangle ReDo,ShowReg; boolean ShowAll=false; int Ax,Ay,By,Bx; /* Compute is the routine called to compute the Statistical Data */ public void compute(){ // Now calculate regression coeffecients float Sx = 0, Sy =0; float Sxx = 0, Sxy = 0, Syy = 0; for(int i=0; i< n; i++) { Sx += x[i]; Sy += y[i]; } xMean = Sx / n; yMean = Sy / n; for(int i=0; i< n; i++) { Sxx += (x[i]-xMean) * (x[i]-xMean); Sxy += (x[i]-xMean) * (y[i]-yMean); Syy += (y[i]-yMean) * (y[i]-yMean); } B1=Sxy/Sxx; //slope B0 = yMean - B1 * xMean;//intercept R_square=(Sxy*Sxy)/(Sxx*Syy); R =(float)( Math.sqrt(R_square) ); if (B1<0) R *= -1; //Compute the R-square for guess gb0 = size().height-Ay; gb1 =(double)((Ay-By)/(double)(size().width)); for (int i=0; i