示例#1
0
 def initialize(self, args, **cfg_args):
     self.configure(**cfg_args)
     (grid_file, data_file, interface, varname, grid_coords,
      var_proc_op) = args
     self.gf = cdms2.open(grid_file) if grid_file else None
     self.df = cdms2.open(data_file)
     self.var = self.getProcessedVariable(varname, var_proc_op)
     self.extractMetadata()
     self.grid = self.var.getGrid()
     self.lev = self.getLevel(self.var)
     lon, lat = self.getLatLon(grid_coords)
     if (id(lon) <> id(None)) and (id(lat) <> id(None)):
         self.time = self.var.getTime()
         z_scale = 0.5
         self.missing_value = self.var.attributes.get('missing_value', None)
         if self.lev == None:
             domain = self.var.getDomain()
             for axis in domain:
                 if PlotType.isLevelAxis(axis[0].id.lower()):
                     self.lev = axis[0]
                     break
         self.computePoints()
         self.setPointHeights(height_var=grid_coords[3], z_scale=z_scale)
         np_var_data_block = self.getDataBlock(self.var).flatten()
         if self.missing_value:
             var_data = numpy.ma.masked_equal(np_var_data_block,
                                              self.missing_value, False)
         else:
             var_data = np_var_data_block
         self.point_data_arrays[self.defvar] = var_data
         self.vrange = (var_data.min(), var_data.max())
         self.var_data_cache[self.iTimeStep] = var_data
         self.metadata['vbounds'] = self.vrange
示例#2
0
 def initialize( self, args, **cfg_args ): 
     self.configure( **cfg_args )
     ( grid_file, data_file, interface, varname, grid_coords, var_proc_op ) = args
     self.gf = cdms2.open( grid_file ) if grid_file else None
     self.df = cdms2.open( data_file )       
     self.var = self.getProcessedVariable( varname, var_proc_op )
     self.extractMetadata()
     self.grid = self.var.getGrid()
     self.lev = self.getLevel(self.var)
     lon, lat = self.getLatLon( grid_coords )  
     if ( id(lon) <> id(None) ) and ( id(lat) <> id(None) ):                                 
         self.time = self.var.getTime()
         z_scale = 0.5
         self.missing_value = self.var.attributes.get( 'missing_value', None )
         if self.lev == None:
             domain = self.var.getDomain()
             for axis in domain:
                 if PlotType.isLevelAxis( axis[0].id.lower() ):
                     self.lev = axis[0]
                     break        
         self.computePoints() 
         self.setPointHeights( height_var=grid_coords[3], z_scale=z_scale )
         np_var_data_block = self.getDataBlock(self.var).flatten()     
         if self.missing_value: var_data = numpy.ma.masked_equal( np_var_data_block, self.missing_value, False )
         else: var_data = np_var_data_block
         self.point_data_arrays[ self.defvar ] = var_data
         self.vrange = ( var_data.min(), var_data.max() ) 
         self.var_data_cache[ self.iTimeStep ] = var_data
         self.metadata['vbounds'] = self.vrange