diff --git a/schainpy/model/graphics/figure.py b/schainpy/model/graphics/figure.py index f60e49b..c35693a 100644 --- a/schainpy/model/graphics/figure.py +++ b/schainpy/model/graphics/figure.py @@ -72,17 +72,22 @@ class Figure: def getTimeLim(self, x, xmin=None, xmax=None, timerange=None): - if self.xmin != None and self.xmax != None: + if xmin != None and xmax != None: if timerange == None: - timerange = self.xmax - self.xmin - xmin = self.xmin + timerange - xmax = self.xmax + timerange + timerange = xmax - xmin + xmin = xmin + timerange + xmax = xmax + timerange return xmin, xmax - if timerange != None and self.xmin == None and self.xmax == None: + if timerange != None and xmin == None and xmax == None: txmin = x[0] - x[0]%timerange + else: + txmin = numpy.min(x) + timerange = 60*60*2 + + if xmin == None and xmax == None: thisdatetime = datetime.datetime.utcfromtimestamp(txmin) thisdate = datetime.datetime.combine(thisdatetime.date(), datetime.time(0,0,0)) xmin = (thisdatetime - thisdate).seconds/(60*60.) @@ -90,7 +95,7 @@ class Figure: if timerange == None: - txmin = numpy.min(x) + thisdatetime = datetime.datetime.utcfromtimestamp(txmin) thisdate = datetime.datetime.combine(thisdatetime.date(), datetime.time(0,0,0)) diff --git a/schainpy/model/io/jroIO_amisr.py b/schainpy/model/io/jroIO_amisr.py index 1d74ba0..9d92337 100644 --- a/schainpy/model/io/jroIO_amisr.py +++ b/schainpy/model/io/jroIO_amisr.py @@ -179,6 +179,7 @@ class AMISRReader(ProcessingUnit): print 'Filtering Files from %s to %s'%(startDateTime_Reader, endDateTime_Reader) print '........................................' filter_filenameList = [] + self.filenameList.sort() for i in range(len(self.filenameList)-1): filename = self.filenameList[i] fp = h5py.File(filename,'r') @@ -341,7 +342,8 @@ class AMISRReader(ProcessingUnit): for i in range(len(self.beamCodeDict.values())): xx = numpy.where(just4record0==self.beamCodeDict.values()[i][0]) - self.beamRangeDict[i] = xx[0] + indexPulseByBeam = self.linear_pulseCount[xx[0]] + self.beamRangeDict[i] = indexPulseByBeam def __getExpParameters(self): if not(self.status): @@ -435,16 +437,16 @@ class AMISRReader(ProcessingUnit): self.__setNextFile() - first_beamcode = self.radacHeaderObj.beamCodeByPulse[0,0] - index = numpy.where(self.radacHeaderObj.beamCodeByPulse[0,:]!=first_beamcode)[0][0] - self.profileIndex_offset = self.radacHeaderObj.pulseCount[0,:][index] +# first_beamcode = self.radacHeaderObj.beamCodeByPulse[0,0] +# index = numpy.where(self.radacHeaderObj.beamCodeByPulse[0,:]!=first_beamcode)[0][0] + self.profileIndex_offset = self.radacHeaderObj.pulseCount[0,:][0] self.profileIndex = self.profileIndex_offset def readRanges(self): dataset = self.amisrFilePointer.get('Raw11/Data/Samples/Range') - #self.rangeFromFile = dataset.value + self.rangeFromFile = numpy.reshape(dataset.value,(-1)) - return range + return self.rangeFromFile def readRadacTime(self,idrecord, range1, range2): diff --git a/schainpy/model/proc/jroproc_amisr.py b/schainpy/model/proc/jroproc_amisr.py index cd70f72..7204fc5 100644 --- a/schainpy/model/proc/jroproc_amisr.py +++ b/schainpy/model/proc/jroproc_amisr.py @@ -45,6 +45,7 @@ class BeamSelector(Operation): def __init__(self): self.profileIndex = 0 + self.__isConfig = False def incIndex(self): self.profileIndex += 1 @@ -72,7 +73,12 @@ class BeamSelector(Operation): def run(self, dataOut, beam=None): dataOut.flagNoData = True - self.nProfiles = dataOut.nProfiles + + if not(self.__isConfig): + + self.nProfiles = dataOut.nProfiles + self.profileIndex = dataOut.profileIndex + self.__isConfig = True if beam != None: if self.isProfileInList(dataOut.beamRangeDict[beam]):