Changeset 2117 for trunk/python


Ignore:
Timestamp:
04/07/11 17:37:27 (14 years ago)
Author:
Kana Sugimoto
Message:

New Development: No

JIRA Issue: No

Ready for Test: Yes

Interface Changes: No

What Interface Changed:

Test Programs:

Put in Release Notes: No

Module(s):

Description: tidy up the codes


Location:
trunk/python
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/python/flagplotter.py

    r2115 r2117  
    2525    """
    2626    def __init__(self, visible=None, **kwargs):
    27         self._scan=None
     27        self._scan = None
    2828        asapplotter.__init__(self,visible=visible, **kwargs)
    2929        self._plotter.window.title('Flag Plotter')
     
    3333
    3434    def _newcasabar(self):
    35         backend=matplotlib.get_backend()
     35        backend = matplotlib.get_backend()
    3636        if self._visible and backend == "TkAgg":
    3737            #from asap.casatoolbar import CustomToolbarTkAgg
     
    6464        """ This function is not available for the class flagplotter """
    6565        self._invalid_func(name='plotpointing')
    66        
     66
    6767    def plottp(self,*args,**kwargs):
    6868        """ This function is not available for the class flagplotter """
  • trunk/python/flagtoolbar.py

    r2115 r2117  
    1919        self._thisregion = None
    2020        self.xdataold=None
    21        
     21
    2222    ### select the nearest spectrum in pick radius
    2323    ###    and display spectral value on the toolbar.
     
    3434            return
    3535
    36         xclick=event.xdata
    37         yclick=event.ydata
    38         dist2=1000.
    39         pickline=None
     36        xclick = event.xdata
     37        yclick = event.ydata
     38        dist2 = 1000.
     39        pickline = None
    4040        # If the pannel has picable objects
    41         pflag=False
     41        pflag = False
    4242        for lin in event.inaxes.lines:
    4343            if not lin.pickable():
    4444                continue
    45             pflag=True
     45            pflag = True
    4646            flag,pind = lin.contains(event)
    4747            if not flag:
     
    6161        # Pickable but too far from mouse position
    6262        elif pickline is None:
    63             picked='No line selected.'
     63            picked = 'No line selected.'
    6464            self.figmgr.toolbar.set_message(picked)
    6565            return
     
    7575        xdata = pickline.get_xdata()
    7676        ydata = pickline.get_ydata()
    77         titl=pickline.get_label()
    78         titp=event.inaxes.title.get_text()
    79         panel0=event.inaxes
    80         picked="Selected: '"+titl+"' in panel '"+titp+"'."
     77        titl = pickline.get_label()
     78        titp = event.inaxes.title.get_text()
     79        panel0 = event.inaxes
     80        picked = "Selected: '"+titl+"' in panel '"+titp+"'."
    8181        thetoolbar.set_message(picked)
    8282        # Generate a navigation window
     
    8686        def spec_data(event):
    8787            # Getting spectrum data of neiboring point
    88             xclick=event.xdata
     88            xclick = event.xdata
    8989            if event.inaxes != panel0:
    9090                return
    91             ipoint=len(xdata)-1
     91            ipoint = len(xdata)-1
    9292            for i in range(len(xdata)-1):
    93                 xl=xclick-xdata[i]
    94                 xr=xclick-xdata[i+1]
     93                xl = xclick-xdata[i]
     94                xr = xclick-xdata[i+1]
    9595                if xl*xr <= 0.:
    9696                    ipoint = i
    9797                    break
    9898            # Output spectral value on the navigation window
    99             posi='[ %s, %s ]:  x = %.2f   value = %.2f'\
     99            posi = '[ %s, %s ]:  x = %.2f   value = %.2f'\
    100100                  %(titl,titp,xdata[ipoint],ydata[ipoint])
    101101            #naviwin.posi.set(posi)
     
    123123        if not self.figmgr.toolbar.mode == '':
    124124            return
    125         if event.button ==1:
     125        if event.button == 1:
    126126            self.notewin.load_textwindow(event)
    127127        elif event.button == 3 and self._note_picked(event):
     
    195195        if event.button != 1:
    196196            return
    197        
     197
    198198        try: self.lastspan
    199199        except AttributeError: pass
     
    417417            asaplog.post("ERROR")
    418418        mathobj = stmath( rcParams['insitu'] )
    419         statval={}
     419        statval = {}
    420420        statstr = ['max', 'min', 'mean', 'median', 'sum', 'stddev', 'rms']
    421421        if isinstance(rows,list) and len(rows) > 0:
     
    506506            asaplog.post('WARN')
    507507            goback = False
    508            
     508
    509509        self.plotter._plotter.hold()
    510510        self.plotter._plotter.legend(1)
     
    538538        # the number of current subplots
    539539        currpnum = len(self.plotter._plotter.subplots)
    540        
     540
    541541        # the nuber of previous subplots
    542542        start_ipanel = None
     
    573573    def show_pagenum(self,pagenum,formatstr):
    574574        # passed to backend dependent class
    575         pass       
     575        pass
    576576
    577577    def _get_pagenum(self):
     
    616616    def _add_custom_toolbar(self):
    617617        Tk.Frame.__init__(self,master=self.figmgr.window)
    618         #self.bSpec=self._NewButton(master=self,
    619         #                           text='spec value',
    620         #                           command=self.spec_show)
    621 
    622         self.bRegion=self._NewButton(master=self,
    623                                    text='region',
    624                                    command=self.select_region)
    625         self.bPanel=self._NewButton(master=self,
    626                                    text='panel',
    627                                    command=self.select_panel)
    628         self.bClear=self._NewButton(master=self,
    629                                    text='clear',
    630                                    command=self.cancel_select)
    631         self.bFlag=self._NewButton(master=self,
    632                                    text='flag',
    633                                    command=self.flag)
    634         self.bUnflag=self._NewButton(master=self,
    635                                    text='unflag',
    636                                    command=self.unflag)
     618        #self.bSpec = self._NewButton(master=self,
     619        #                             text='spec value',
     620        #                             command=self.spec_show)
     621
     622        self.bRegion = self._NewButton(master=self,
     623                                       text='region',
     624                                       command=self.select_region)
     625        self.bPanel = self._NewButton(master=self,
     626                                      text='panel',
     627                                      command=self.select_panel)
     628        self.bClear = self._NewButton(master=self,
     629                                      text='clear',
     630                                      command=self.cancel_select)
     631        self.bFlag = self._NewButton(master=self,
     632                                     text='flag',
     633                                     command=self.flag)
     634        self.bUnflag = self._NewButton(master=self,
     635                                       text='unflag',
     636                                       command=self.unflag)
    637637       
    638         self.bStat=self._NewButton(master=self,
    639                                    text='statistics',
    640                                    command=self.stat_cal)
    641 
    642         self.bNote=self._NewButton(master=self,
    643                                    text='notation',
    644                                    command=self.modify_note)
    645 
    646         self.bQuit=self._NewButton(master=self,
    647                                    text='Quit',
    648                                    #file="stock_close.ppm",
    649                                    command=self.quit,
    650                                    side=Tk.RIGHT)
    651        
     638        self.bStat = self._NewButton(master=self,
     639                                     text='statistics',
     640                                     command=self.stat_cal)
     641
     642        self.bNote = self._NewButton(master=self,
     643                                     text='notation',
     644                                     command=self.modify_note)
     645
     646        self.bQuit = self._NewButton(master=self,
     647                                     text='Quit',
     648                                     #file="stock_close.ppm",
     649                                     command=self.quit,
     650                                     side=Tk.RIGHT)
     651
    652652        # page change oparations
    653653        frPage = Tk.Frame(master=self,borderwidth=2,relief=Tk.GROOVE)
     
    661661                                   padx=5,bg='white')
    662662        self.lPagecount.pack(side=Tk.LEFT,padx=3)
    663        
     663
    664664        self.bNext=self._NewButton(master=frPage,
    665665                                   text=' + ',
     
    685685            file = os.path.join(matplotlib.rcParams['datapath'], 'images', file)
    686686            img = Tk.PhotoImage(master=master, file=file)
    687            
     687
    688688        if os.uname()[0] == 'Darwin':
    689689            b = Tk.Button(master=master, text=text, image=img,
     
    704704        self.figmgr.toolbar.set_message('spec value: drag on a spec')
    705705        if self.mode == 'spec': return
    706         self.mode='spec'
     706        self.mode = 'spec'
    707707        self.notewin.close_widgets()
    708708        self.__disconnect_event()
     
    714714        if self.mode == 'note':
    715715            self.bNote.config(relief='raised')
    716             self.mode='none'
     716            self.mode = 'none'
    717717            self.spec_show()
    718718            return
     
    720720        self.bRegion.config(relief='raised')
    721721        self.bPanel.config(relief='raised')
    722         self.mode='note'
     722        self.mode = 'note'
    723723        self.__disconnect_event()
    724724        self._p.register('button_press',self._mod_note)
     
    729729        if self.mode == 'region':
    730730            self.bRegion.config(relief='raised')
    731             self.mode='none'
     731            self.mode = 'none'
    732732            self.spec_show()
    733733            return
     
    735735        self.bRegion.config(relief='sunken')
    736736        self.bPanel.config(relief='raised')
    737         self.mode='region'
     737        self.mode = 'region'
    738738        self.notewin.close_widgets()
    739739        self.__disconnect_event()
     
    745745        if self.mode == 'panel':
    746746            self.bPanel.config(relief='raised')
    747             self.mode='none'
     747            self.mode = 'none'
    748748            self.spec_show()
    749749            return
     
    751751        self.bRegion.config(relief='raised')
    752752        self.bPanel.config(relief='sunken')
    753         self.mode='panel'
     753        self.mode = 'panel'
    754754        self.notewin.close_widgets()
    755755        self.__disconnect_event()
     
    770770        self.bUnflag.config(state=Tk.NORMAL)
    771771        self.bStat.config(state=Tk.NORMAL)
    772         self.button=True
     772        self.button = True
    773773        self.spec_show()
    774774
     
    786786        self.bNext.config(state=Tk.DISABLED)
    787787        self.bPrev.config(state=Tk.DISABLED)
    788         self.button=False
    789         self.mode=''
     788        self.button = False
     789        self.mode = ''
    790790        self.notewin.close_widgets()
    791791        self.__disconnect_event()
     
    814814            getattr(self,btn).config(state=state)
    815815        self.figmgr.toolbar.set_message(msg)
    816            
    817        
     816
    818817    def delete_bar(self):
    819818        self.__disconnect_event()
  • trunk/python/interactivemask.py

    r2109 r2117  
    4141            raise TypeError(msg)
    4242
    43         self.scan=None
    44         self.p=None
    45         self.newplot=False
     43        self.scan = None
     44        self.p = None
     45        self.newplot = False
    4646        if scan and isinstance(scan, scantable):
    47             self.scan=scan
     47            self.scan = scan
    4848        from asap.asapplotter import asapplotter
    4949        if plotter and isinstance(plotter,asapplotter):
    5050            self.p = plotter
    5151            if self.scan is None and isinstance(self.p._data,scantable):
    52                 self.scan=self.p._data
     52                self.scan = self.p._data
    5353        if self.scan is None:
    5454            msg = "Invalid scantable."
    5555            raise TypeError(msg)
    5656
    57         self.mask=_n_bools(self.scan.nchan(),True)
    58         self.callback=None
    59         self.event=None
    60         self.once=False
    61         self.showmask=True
    62         self.rect={}
    63         self.xold=None
    64         self.yold=None
    65         self.xdataold=None
    66         self.ydataold=None
    67         self._polygons=[]
     57        self.mask = _n_bools(self.scan.nchan(),True)
     58        self.callback = None
     59        self.event = None
     60        self.once = False
     61        self.showmask = True
     62        self.rect = {}
     63        self.xold = None
     64        self.yold = None
     65        self.xdataold = None
     66        self.ydataold = None
     67        self._polygons = []
    6868
    6969
     
    9090        # Create base mask
    9191        if ( len(masklist) > 0 ):
    92             self.mask=self.scan.create_mask(masklist,invert=invert)
    93         elif invert==True:
    94             self.mask=_n_bools(self.scan.nchan(),False)
    95         else:
    96             self.mask=_n_bools(self.scan.nchan(),True)
     92            self.mask = self.scan.create_mask(masklist,invert=invert)
     93        elif invert == True:
     94            self.mask = _n_bools(self.scan.nchan(),False)
     95        else:
     96            self.mask = _n_bools(self.scan.nchan(),True)
    9797
    9898
     
    106106        """
    107107        from matplotlib.backend_bases import MouseEvent
    108         if isinstance(event,MouseEvent) and event.name=='button_press_event':
    109             self.event=event
    110         else:
    111             msg="Invalid event."
     108        if isinstance(event,MouseEvent) and event.name == 'button_press_event':
     109            self.event = event
     110        else:
     111            msg = "Invalid event."
    112112            raise TypeError(msg)
    113113
     
    120120                  finish_selection(callback=func)
    121121        """
    122         self.callback=callback
     122        self.callback = callback
    123123
    124124    def select_mask(self,once=False,showmask=True):
     
    148148        self.once = once
    149149        if self.once:
    150             self.showmask=showmask
     150            self.showmask = showmask
    151151        else:
    152152            if not showmask:
     
    154154                asaplog.push('showmask spcification is ignored. Mask regions are plotted anyway.')
    155155                asaplog.post("WARN")
    156             self.showmask=True
     156            self.showmask = True
    157157
    158158        #if not self.p._plotter or self.p._plotter.is_dead:
     
    161161            asaplog.post()
    162162            from asap.asapplotter import asapplotter
    163             self.p=asapplotter()
    164             self.newplot=True
     163            self.p = asapplotter()
     164            self.newplot = True
    165165
    166166        # Plot selected spectra if needed
     
    206206        # Do not fire event when in zooming/panning mode
    207207        mode = self.p._plotter.figmgr.toolbar.mode
    208         if not mode =='':
     208        if not mode == '':
    209209            return
    210210        # Return if selected point is out of panel
     
    223223        sameaxes=(event.inaxes == self.rect['axes'])
    224224        if sameaxes:
    225             xnow=event.x
    226             ynow=event.y
    227             self.xold=xnow
    228             self.yold=ynow
    229             self.xdataold=event.xdata
    230             self.ydataold=event.ydata
    231         else:
    232             xnow=self.xold
    233             ynow=self.yold
     225            xnow = event.x
     226            ynow = event.y
     227            self.xold = xnow
     228            self.yold = ynow
     229            self.xdataold = event.xdata
     230            self.ydataold = event.ydata
     231        else:
     232            xnow = self.xold
     233            ynow = self.yold
    234234
    235235        self.p._plotter.figmgr.toolbar.draw_rubberband(event, xnow, ynow, self.rect['x'], self.rect['y'])
     
    243243
    244244        if event.inaxes == self.rect['axes']:
    245             xend=event.x
    246             yend=event.y
    247             xdataend=event.xdata
    248             ydataend=event.ydata
    249         else:
    250             xend=self.xold
    251             yend=self.yold
    252             xdataend=self.xdataold
    253             ydataend=self.ydataold
     245            xend = event.x
     246            yend = event.y
     247            xdataend = event.xdata
     248            ydataend = event.ydata
     249        else:
     250            xend = self.xold
     251            yend = self.yold
     252            xdataend = self.xdataold
     253            ydataend = self.ydataold
    254254
    255255        self.rect['world'][2:4] = [xdataend, ydataend]
     
    257257        self._update_mask()
    258258        # Clear up region selection
    259         self.rect={}
    260         self.xold=None
    261         self.yold=None
    262         self.xdataold=None
    263         self.ydataold=None
     259        self.rect = {}
     260        self.xold = None
     261        self.yold = None
     262        self.xdataold = None
     263        self.ydataold = None
    264264        if self.once: self.finish_selection(callback=self.callback)
    265265
    266266    def _update_mask(self):
    267267        # Min and Max for new mask
    268         xstart=self.rect['world'][0]
    269         xend=self.rect['world'][2]
     268        xstart = self.rect['world'][0]
     269        xend = self.rect['world'][2]
    270270        if xstart <= xend: newlist=[xstart,xend]
    271         else: newlist=[xend,xstart]
     271        else: newlist = [xend,xstart]
    272272        # Mask or unmask
    273         invmask=None
     273        invmask = None
    274274        if self.rect['button'] == 1:
    275             invmask=False
    276             mflg='Mask'
     275            invmask = False
     276            mflg = 'Mask'
    277277        elif self.rect['button'] == 3:
    278             invmask=True
    279             mflg='UNmask'
     278            invmask = True
     279            mflg = 'UNmask'
    280280        asaplog.push(mflg+': '+str(newlist))
    281281        asaplog.post()
    282         newmask=self.scan.create_mask(newlist,invert=invmask)
     282        newmask = self.scan.create_mask(newlist,invert=invmask)
    283283        # Logic operation to update mask
    284284        if invmask:
    285             self.mask=mask_and(self.mask,newmask)
    286         else:
    287             self.mask=mask_or(self.mask,newmask)
     285            self.mask = mask_and(self.mask,newmask)
     286        else:
     287            self.mask = mask_or(self.mask,newmask)
    288288        # Plot masked regions
    289289        #if self.showmask or not self.once: self._plot_mask()
     
    295295        msks = self.scan.get_masklist(self.mask,row=0)
    296296        # Get projection masks for multi-IF
    297         ifs=self.scan.getifnos()
     297        ifs = self.scan.getifnos()
    298298        projs = []
    299299        if len(ifs) > 1:
    300             row0if=self.scan.getif(0)
     300            row0if = self.scan.getif(0)
    301301            for ifno in ifs:
    302302                if ifno == row0if: continue
     
    308308            # Remove old polygons
    309309            for polygon in self._polygons: polygon.remove()
    310             self._polygons=[]
     310            self._polygons = []
    311311        # Plot new polygons
    312312        if len(msks) > 0:
    313             npanel=len(self.p._plotter.subplots)
    314             j=-1
     313            npanel = len(self.p._plotter.subplots)
     314            j = -1
    315315            for iloop in range(len(msks)*npanel):
    316316                i = iloop % len(msks)
     
    346346            self.p._plotter = None
    347347            del self.p
    348             self.p=None
    349             self._polygons=[]
     348            self.p = None
     349            self._polygons = []
    350350
    351351
     
    354354        Erase masks plots from the plotter.
    355355        """
    356         if len(self._polygons)>0:
     356        if len(self._polygons) > 0:
    357357            # Remove old polygons
    358358            for polygon in self._polygons: polygon.remove()
    359359            self.p._plotter.show()
    360             self._polygons=[]
     360            self._polygons = []
    361361
    362362
Note: See TracChangeset for help on using the changeset viewer.