def __get_color(self,cat): colors=self.config['COLORS'] if cat=='cat': cat=self.basef defcfg=colors[u'憲法'] cfg=colors.get(cat,defcfg) h=cfg['h'] s=cfg['s'] b=cfg['b'] return Color.getHSBColor(h,s,b)
size = Vec2(600,600) canvas = Window(size) def inMandelbrotSet(c): z = 0 h = 0 for h in xrange(0, 100): z = z**2 + c if abs(z) > 2: break; if abs(z) >= 2: return -1 else: return h for x in range (0, size.x): real = x / 200.0 - 1.5 for y in range(0, size.y): img = y / 200.0 -1.5 c = complex(real, img) n = inMandelbrotSet(c) if n!= -1: #print n/100.0 canvas.setColor(Vec2(x,y), Color.getHSBColor(n/100.0,1,0.5)) canvas.refresh() print "done"
row=[ str(p[i]) for p in profiles ] row=",".join(row) f.write(row+"\n") # Generate a plot if doPlot: from ij.gui import Plot from java.awt import Color p = Plot('Profiles','Channel #','Intensity') p.setSize(640,480) maxP = len(profiles) maxV = 0 for iprofile,profile in enumerate(profiles): h = 0.66-(float(iprofile)/maxP) if h<0: h=h+1 p.setColor(Color.getHSBColor( h,.8,1)) p.addPoints(range(len(profile)),profile,p.LINE) maxV_=max(profile) if maxV < maxV_: maxV = maxV_ p.setLimits(0,len(profile)-1,0,maxV*1.2) p.setLegend("\n".join(names),p.TOP_LEFT|p.LEGEND_TRANSPARENT) p.show() # Save the plot as PNG if doSavePlot: imp = p.getImagePlus() IJ.saveAs(imp,'PNG',file.absolutePath + "_compensationPlot.png")