def reDraw(self, newData, newData2=[]): self.data = newData if len(newData2) > 0: self.data2 = newData2 self.doubleBox = True self.min2 = SummaryCalcs.minimum(self.data2) self.q12 = SummaryCalcs.quar1(self.data2) self.mean2 = SummaryCalcs.mean(self.data2) self.q32 = SummaryCalcs.quar3(self.data2) self.max2 = SummaryCalcs.maximum(self.data2) else: self.doubleBox = False self.min = SummaryCalcs.minimum(self.data) self.q1 = SummaryCalcs.quar1(self.data) self.mean = SummaryCalcs.mean(self.data) self.q3 = SummaryCalcs.quar3(self.data) self.max = SummaryCalcs.maximum(self.data) self.scale = self.calcScale() if self.doubleBox: if self.min - self.min2 > 0: self.lower = 1 else: self.lower = 2 if self.max - self.max2 > 0: self.higher = 1 else: self.higher = 2 self.parent.delete("all") self.draw_plot()
def LineOfBestFit(self): xBar = SummaryCalcs.mean(self.dataX) yBar = SummaryCalcs.mean(self.dataY) bigEQtop = 0 bigEQbottom = 0 for i in range(0, len(self.dataX)): xEQ = self.dataX[i] - xBar bigEQtop += (xEQ * (self.dataY[i] - yBar)) bigEQbottom += (xEQ * xEQ) self.LBslope = bigEQtop / bigEQbottom self.Bval = yBar - (self.LBslope * xBar) print "y = " + str(round(self.LBslope,3)) + "x+" + str(round(self.Bval,3)) self.drawLB()
def __init__(self, master, data, data2=[], master_size=[640, 640], color="black", color2="black", axisColor="black", bufferZone=[20, 20]): self.parent = master self.master_size = master_size self.color = color self.color2 = color2 self.axisColor = axisColor self.bufferZone = bufferZone self.bufferZone2 = [bufferZone[0], bufferZone[1]+70] self.data = data if len(data2) > 0: self.data2 = data2 self.doubleBox = True self.min2 = SummaryCalcs.minimum(self.data2) self.q12 = SummaryCalcs.quar1(self.data2) self.mean2 = SummaryCalcs.mean(self.data2) self.q32 = SummaryCalcs.quar3(self.data2) self.max2 = SummaryCalcs.maximum(self.data2) else: self.doubleBox = False self.min = SummaryCalcs.minimum(self.data) self.q1 = SummaryCalcs.quar1(self.data) self.mean = SummaryCalcs.mean(self.data) self.q3 = SummaryCalcs.quar3(self.data) self.max = SummaryCalcs.maximum(self.data) self.scale = self.calcScale() if self.doubleBox: if self.min - self.min2 > 0: self.lower = 1 else: self.lower = 2 if self.max - self.max2 > 0: self.higher = 1 else: self.higher = 2 self.draw_plot()