##// END OF EJS Templates
Review last commit
Review last commit

File last commit:

r1179:6414333e2ace
r1186:29f68a738921 merge
Show More
jroplot_parameters.py
2157 lines | 67.3 KiB | text/x-python | PythonLexer
Julio Valdez
Processing Modules added:...
r502 import os
import datetime
import numpy
José Chávez
checking misspelled kwargs in operations/processing units
r929 import inspect
George Yong
Python 2to3, Spectra (all operations) working
r1167 from .figure import Figure, isRealtime, isTimeInHourRange
from .plotting_codes import *
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 from schainpy.model.proc.jroproc_base import MPDecorator
from schainpy.utils import log
Juan C. Valdez
Version 2.2.5 Fixed several bugs, add jro colormap for spectra/rti, add ParamWriter, TODO: Fix decimation currently disabled
r860
ebocanegra
15/08/2017
r1001 class FitGauPlot(Figure):
isConfig = None
__nsubplots = None
WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'fitgau'
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
self.isConfig = False
self.__nsubplots = 1
self.WIDTH = 250
self.HEIGHT = 250
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
self.PLOT_CODE = SPEC_CODE
self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
self.__xfilter_ena = False
self.__yfilter_ena = False
def getSubplots(self):
ncol = int(numpy.sqrt(self.nplots)+0.9)
nrow = int(self.nplots*1./ncol + 0.9)
return nrow, ncol
def setup(self, id, nplots, wintitle, showprofile=True, show=True):
self.__showprofile = showprofile
self.nplots = nplots
ncolspan = 1
colspan = 1
if showprofile:
ncolspan = 3
colspan = 2
self.__nsubplots = 2
self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
nrow, ncol = self.getSubplots()
counter = 0
for y in range(nrow):
for x in range(ncol):
if counter >= self.nplots:
break
self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
if showprofile:
self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
counter += 1
def run(self, dataOut, id, wintitle="", channelList=None, showprofile=True,
xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, realtime=False,
xaxis="frequency", colormap='jet', normFactor=None , GauSelector = 1):
"""
Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
if realtime:
if not(isRealtime(utcdatatime = dataOut.utctime)):
George Yong
Python 2to3, Spectra (all operations) working
r1167 print('Skipping this plot function')
ebocanegra
15/08/2017
r1001 return
if channelList == None:
channelIndexList = dataOut.channelIndexList
else:
channelIndexList = []
for channel in channelList:
if channel not in dataOut.channelList:
George Yong
Python 2to3, Spectra (all operations) working
r1167 raise ValueError("Channel %d is not in dataOut.channelList" %channel)
ebocanegra
15/08/2017
r1001 channelIndexList.append(dataOut.channelList.index(channel))
# if normFactor is None:
# factor = dataOut.normFactor
# else:
# factor = normFactor
if xaxis == "frequency":
x = dataOut.spc_range[0]
xlabel = "Frequency (kHz)"
elif xaxis == "time":
x = dataOut.spc_range[1]
xlabel = "Time (ms)"
else:
x = dataOut.spc_range[2]
xlabel = "Velocity (m/s)"
ylabel = "Range (Km)"
y = dataOut.getHeiRange()
z = dataOut.GauSPC[:,GauSelector,:,:] #GauSelector] #dataOut.data_spc/factor
George Yong
Python 2to3, Spectra (all operations) working
r1167 print('GausSPC', z[0,32,10:40])
ebocanegra
15/08/2017
r1001 z = numpy.where(numpy.isfinite(z), z, numpy.NAN)
zdB = 10*numpy.log10(z)
avg = numpy.average(z, axis=1)
avgdB = 10*numpy.log10(avg)
noise = dataOut.spc_noise
noisedB = 10*numpy.log10(noise)
thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
title = wintitle + " Spectra"
if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
title = title + '_' + 'azimuth,zenith=%2.2f,%2.2f'%(dataOut.azimuth, dataOut.zenith)
if not self.isConfig:
nplots = len(channelIndexList)
self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
if xmin == None: xmin = numpy.nanmin(x)
if xmax == None: xmax = numpy.nanmax(x)
if ymin == None: ymin = numpy.nanmin(y)
if ymax == None: ymax = numpy.nanmax(y)
if zmin == None: zmin = numpy.floor(numpy.nanmin(noisedB)) - 3
if zmax == None: zmax = numpy.ceil(numpy.nanmax(avgdB)) + 3
self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
self.isConfig = True
self.setWinTitle(title)
for i in range(self.nplots):
index = channelIndexList[i]
str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
title = "Channel %d: %4.2fdB: %s" %(dataOut.channelList[index], noisedB[index], str_datetime)
if len(dataOut.beam.codeList) != 0:
title = "Ch%d:%4.2fdB,%2.2f,%2.2f:%s" %(dataOut.channelList[index], noisedB[index], dataOut.beam.azimuthList[index], dataOut.beam.zenithList[index], str_datetime)
axes = self.axesList[i*self.__nsubplots]
axes.pcolor(x, y, zdB[index,:,:],
xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
xlabel=xlabel, ylabel=ylabel, title=title, colormap=colormap,
ticksize=9, cblabel='')
if self.__showprofile:
axes = self.axesList[i*self.__nsubplots +1]
axes.pline(avgdB[index,:], y,
xmin=zmin, xmax=zmax, ymin=ymin, ymax=ymax,
xlabel='dB', ylabel='', title='',
ytick_visible=False,
grid='x')
noiseline = numpy.repeat(noisedB[index], len(y))
axes.addpline(noiseline, y, idline=1, color="black", linestyle="dashed", lw=2)
self.draw()
if figfile == None:
str_datetime = thisDatetime.strftime("%Y%m%d_%H%M%S")
name = str_datetime
if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
name = name + '_az' + '_%2.2f'%(dataOut.azimuth) + '_zn' + '_%2.2f'%(dataOut.zenith)
figfile = self.getFilename(name)
self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime)
Julio Valdez
Processing Modules added:...
r502 class MomentsPlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'prm'
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 def __init__(self):
Figure.__init__(self)
Julio Valdez
Processing Modules added:...
r502 self.isConfig = False
self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.WIDTH = 280
self.HEIGHT = 250
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.PLOT_CODE = MOMENTS_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 ncol = int(numpy.sqrt(self.nplots)+0.9)
nrow = int(self.nplots*1./ncol + 0.9)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 ncolspan = 1
colspan = 1
if showprofile:
ncolspan = 3
colspan = 2
self.__nsubplots = 2
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 counter = 0
for y in range(nrow):
for x in range(ncol):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if showprofile:
self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def run(self, dataOut, id, wintitle="", channelList=None, showprofile=True,
xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
Julio Valdez
Processing Modules added:...
r502 server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, realtime=False):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if dataOut.flagNoData:
return None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if realtime:
if not(isRealtime(utcdatatime = dataOut.utctime)):
George Yong
Python 2to3, Spectra (all operations) working
r1167 print('Skipping this plot function')
Julio Valdez
Processing Modules added:...
r502 return
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if channelList == None:
channelIndexList = dataOut.channelIndexList
else:
channelIndexList = []
for channel in channelList:
if channel not in dataOut.channelList:
George Yong
Python 2to3, Spectra (all operations) working
r1167 raise ValueError("Channel %d is not in dataOut.channelList")
Julio Valdez
Processing Modules added:...
r502 channelIndexList.append(dataOut.channelList.index(channel))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 factor = dataOut.normFactor
Julio Valdez
-Functional HDF5 file writer unit...
r543 x = dataOut.abscissaList
y = dataOut.heightList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 z = dataOut.data_pre[channelIndexList,:,:]/factor
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 z = numpy.where(numpy.isfinite(z), z, numpy.NAN)
Julio Valdez
Processing Modules added:...
r502 avg = numpy.average(z, axis=1)
noise = dataOut.noise/factor
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 zdB = 10*numpy.log10(z)
avgdB = 10*numpy.log10(avg)
noisedB = 10*numpy.log10(noise)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 #thisDatetime = dataOut.datatime
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 title = wintitle + " Parameters"
Julio Valdez
Processing Modules added:...
r502 xlabel = "Velocity (m/s)"
ylabel = "Range (Km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = False
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 nplots = len(channelIndexList)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if xmin == None: xmin = numpy.nanmin(x)
if xmax == None: xmax = numpy.nanmax(x)
if ymin == None: ymin = numpy.nanmin(y)
if ymax == None: ymax = numpy.nanmax(y)
if zmin == None: zmin = numpy.nanmin(avgdB)*0.9
if zmax == None: zmax = numpy.nanmax(avgdB)*0.9
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.isConfig = True
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 for i in range(self.nplots):
str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
Miguel Valdez
Channel title was fixed in plots
r713 title = "Channel %d: %4.2fdB: %s" %(dataOut.channelList[i], noisedB[i], str_datetime)
Julio Valdez
Processing Modules added:...
r502 axes = self.axesList[i*self.__nsubplots]
axes.pcolor(x, y, zdB[i,:,:],
xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
xlabel=xlabel, ylabel=ylabel, title=title,
ticksize=9, cblabel='')
#Mean Line
mean = dataOut.data_param[i, 1, :]
axes.addpline(mean, y, idline=0, color="black", linestyle="solid", lw=1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if self.__showprofile:
axes = self.axesList[i*self.__nsubplots +1]
axes.pline(avgdB[i], y,
xmin=zmin, xmax=zmax, ymin=ymin, ymax=ymax,
xlabel='dB', ylabel='', title='',
ytick_visible=False,
grid='x')
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 noiseline = numpy.repeat(noisedB[i], len(y))
axes.addpline(noiseline, y, idline=1, color="black", linestyle="dashed", lw=2)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 class SkyMapPlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 __isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 WIDTHPROF = None
HEIGHTPROF = None
Julio Valdez
data...
r608 PREFIX = 'mmap'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
Processing Modules added:...
r502 self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 # self.WIDTH = 280
# self.HEIGHT = 250
self.WIDTH = 600
self.HEIGHT = 600
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.PLOT_CODE = MSKYMAP_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 ncol = int(numpy.sqrt(self.nplots)+0.9)
nrow = int(self.nplots*1./ncol + 0.9)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def setup(self, id, nplots, wintitle, showprofile=False, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH, #+ self.WIDTHPROF,
heightplot = self.HEIGHT,# + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
nrow, ncol = 1,1
Julio Valdez
Processing Modules added:...
r502 counter = 0
x = 0
y = 0
self.addAxes(1, 1, 0, 0, 1, 1, True)
def run(self, dataOut, id, wintitle="", channelList=None, showprofile=False,
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 tmin=0, tmax=24, timerange=None,
Julio Valdez
Processing Modules added:...
r502 save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, realtime=False):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 arrayParameters = dataOut.data_param
Julio Valdez
Processing Modules added:...
r502 error = arrayParameters[:,-1]
indValid = numpy.where(error == 0)[0]
finalMeteor = arrayParameters[indValid,:]
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 finalAzimuth = finalMeteor[:,3]
finalZenith = finalMeteor[:,4]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 x = finalAzimuth*numpy.pi/180
y = finalZenith
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 x1 = [dataOut.ltctime, dataOut.ltctime]
Julio Valdez
Processing Modules added:...
r502 #thisDatetime = dataOut.datatime
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.ltctime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 title = wintitle + " Parameters"
Julio Valdez
Processing Modules added:...
r502 xlabel = "Zonal Zenith Angle (deg) "
ylabel = "Meridional Zenith Angle (deg)"
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = False
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 nplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
SkyMap new feature: tmin and tmax selection
r787 if self.xmin is None and self.xmax is None:
self.xmin, self.xmax = self.getTimeLim(x1, tmin, tmax, timerange)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 if timerange != None:
self.timerange = timerange
else:
self.timerange = self.xmax - self.xmin
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
self.firstdate = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = True
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 i = 0
str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
axes = self.axesList[i*self.__nsubplots]
nevents = axes.x_buffer.shape[0] + x.shape[0]
title = "Meteor Detection Sky Map\n %s - %s \n Number of events: %5.0f\n" %(self.firstdate,str_datetime,nevents)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 axes.polar(x, y,
Julio Valdez
Processing Modules added:...
r502 title=title, xlabel=xlabel, ylabel=ylabel,
ticksize=9, cblabel='')
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
Julio Valdez
Fixed plot bugs
r785 thisDatetime=thisDatetime,
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile=update_figfile)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 if dataOut.ltctime >= self.xmax:
Ivan Valdez
Bug fixed
r797 self.isConfigmagwr = wr_period
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = True
axes.__firsttime = True
self.xmin += self.timerange
self.xmax += self.timerange
Julio Valdez
data...
r608
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 class WindProfilerPlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 __isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'wind'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Julio Valdez
data...
r608 self.timerange = None
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
Processing Modules added:...
r502 self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.WIDTH = 800
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.HEIGHT = 300
Julio Valdez
Processing Modules added:...
r502 self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.PLOT_CODE = WIND_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 self.tmin = None
Julio Valdez
Processing Modules added:...
r502 self.tmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.xmin = None
self.xmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 ncol = 1
nrow = self.nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 counter = 0
for y in range(nrow):
if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
self.addAxes(nrow, ncol*ncolspan, y, 0, colspan, 1)
Julio Valdez
Processing Modules added:...
r502 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 def run(self, dataOut, id, wintitle="", channelList=None, showprofile='False',
Julio Valdez
Processing Modules added:...
r502 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
zmax_ver = None, zmin_ver = None, SNRmin = None, SNRmax = None,
timerange=None, SNRthresh = None,
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 save=False, figpath='./', lastone=0,figfile=None, ftp=False, wr_period=1, show=True,
Julio Valdez
Processing Modules added:...
r502 server=None, folder=None, username=None, password=None,
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
Julio Valdez
Processing Modules added:...
r502 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 # if timerange is not None:
Julio Valdez
data...
r608 # self.timerange = timerange
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 #
Julio Valdez
data...
r608 # tmin = None
# tmax = None
Erick Valdez
cambio
r870
ebocanegra
15/08/2017
r1001 x = dataOut.getTimeRange1(dataOut.paramInterval)
Juan C. Espinoza
BLTR ok
r1018 y = dataOut.heightList
z = dataOut.data_output.copy()
Julio Valdez
Processing Modules added:...
r502 nplots = z.shape[0] #Number of wind dimensions estimated
nplotsw = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 #If there is a SNR function defined
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if dataOut.data_SNR is not None:
Julio Valdez
Processing Modules added:...
r502 nplots += 1
Julio Valdez
First Draft HDF5 IO module
r514 SNR = dataOut.data_SNR
Julio Valdez
Processing Modules added:...
r502 SNRavg = numpy.average(SNR, axis=0)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 SNRdB = 10*numpy.log10(SNR)
SNRavgdB = 10*numpy.log10(SNRavg)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if SNRthresh == None: SNRthresh = -5.0
ind = numpy.where(SNRavg < 10**(SNRthresh/10))[0]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 for i in range(nplotsw):
z[i,ind] = numpy.nan
Juan C. Valdez
Restore previous version...
r877
Erick Valdez
cambio
r870 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.ltctime)
Juan C. Valdez
Restore previous version...
r877 #thisDatetime = datetime.datetime.now()
Julio Valdez
Processing Modules added:...
r502 title = wintitle + "Wind"
xlabel = ""
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 ylabel = "Height (km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 update_figfile = False
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if timerange is not None:
Julio Valdez
data...
r608 self.timerange = timerange
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug plotting RTI fixed for jroplot_heispectra, jroplot_parameters, jroplot_spectra
r567 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Erick Valdez
cambio
r870 if ymin == None: ymin = numpy.nanmin(y)
if ymax == None: ymax = numpy.nanmax(y)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
George Yong
Python 2to3, Spectra (all operations) working
r1167 if zmax == None: zmax = numpy.nanmax(abs(z[list(range(2)),:]))
Julio Valdez
Processing Modules added:...
r502 #if numpy.isnan(zmax): zmax = 50
if zmin == None: zmin = -zmax
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 if nplotsw == 3:
if zmax_ver == None: zmax_ver = numpy.nanmax(abs(z[2,:]))
if zmin_ver == None: zmin_ver = -zmax_ver
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Erick Valdez
cambio
r870 if dataOut.data_SNR is not None:
if SNRmin == None: SNRmin = numpy.nanmin(SNRavgdB)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 if SNRmax == None: SNRmax = numpy.nanmax(SNRavgdB)
Julio Valdez
Processing Modules added:...
r502 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = True
Julio Valdez
data...
r608 self.figfile = figfile
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Erick Valdez
cambio
r870 if ((self.xmax - x[1]) < (x[1]-x[0])):
x[1] = self.xmax
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 strWind = ['Zonal', 'Meridional', 'Vertical']
strCb = ['Velocity (m/s)','Velocity (m/s)','Velocity (cm/s)']
zmaxVector = [zmax, zmax, zmax_ver]
zminVector = [zmin, zmin, zmin_ver]
windFactor = [1,1,100]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 for i in range(nplotsw):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 title = "%s Wind: %s" %(strWind[i], thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[i*self.__nsubplots]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Erick Valdez
cambio
r870 z1 = z[i,:].reshape((1,-1))*windFactor[i]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 #z1=numpy.ma.masked_where(z1==0.,z1)
Juan C. Valdez
Restore previous version...
r877
Julio Valdez
Processing Modules added:...
r502 axes.pcolorbuffer(x, y, z1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zminVector[i], zmax=zmaxVector[i],
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
Erick Valdez
cambio
r870 ticksize=9, cblabel=strCb[i], cbsize="1%", colormap="seismic" )
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if dataOut.data_SNR is not None:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 i += 1
Julio Valdez
Processing Modules added:...
r502 title = "Signal Noise Ratio (SNR): %s" %(thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[i*self.__nsubplots]
Juan C. Valdez
Restore previous version...
r877 SNRavgdB = SNRavgdB.reshape((1,-1))
Julio Valdez
Processing Modules added:...
r502 axes.pcolorbuffer(x, y, SNRavgdB,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=SNRmin, zmax=SNRmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
ticksize=9, cblabel='', cbsize="1%", colormap="jet")
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Processing Modules added:...
r502 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime,
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile=update_figfile)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
ebocanegra
15/08/2017
r1001 if dataOut.ltctime + dataOut.paramInterval >= self.xmax:
Erick Valdez
cambio
r870 self.counter_imagwr = wr_period
Julio Valdez
Bug fixed when plot changed from one day to the next
r852 self.isConfig = False
update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 @MPDecorator
Julio Valdez
-Parameters Plot corrected...
r832 class ParametersPlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 __isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'param'
nplots = None
nchan = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 def __init__(self):#, **kwargs):
Figure.__init__(self)#, **kwargs)
Julio Valdez
-Parameters Plot corrected...
r832 self.timerange = None
self.isConfig = False
self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.WIDTH = 800
self.HEIGHT = 180
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.PLOT_CODE = RTI_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 self.tmin = None
Julio Valdez
-Parameters Plot corrected...
r832 self.tmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.xmin = None
self.xmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 ncol = 1
nrow = self.nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 def setup(self, id, nplots, wintitle, show=True):
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 counter = 0
for y in range(nrow):
for x in range(ncol):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
ebocanegra
15/08/2017
r1001 def run(self, dataOut, id, wintitle="", channelList=None, paramIndex = 0, colormap="jet",
Julio Valdez
-Parameters Plot corrected...
r832 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None, timerange=None,
showSNR=False, SNRthresh = -numpy.inf, SNRmin=None, SNRmax=None,
save=False, figpath='./', lastone=0,figfile=None, ftp=False, wr_period=1, show=True,
server=None, folder=None, username=None, password=None,
ebocanegra
15/08/2017
r1001 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, HEIGHT=None):
Julio Valdez
-Parameters Plot corrected...
r832 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 if dataOut.flagNoData:
return dataOut
ebocanegra
15/08/2017
r1001
if HEIGHT is not None:
self.HEIGHT = HEIGHT
Julio Valdez
-Parameters Plot corrected...
r832 if not isTimeInHourRange(dataOut.datatime, xmin, xmax):
return
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if channelList == None:
George Yong
Python 2to3, Spectra (all operations) working
r1167 channelIndexList = list(range(dataOut.data_param.shape[0]))
Julio Valdez
-Parameters Plot corrected...
r832 else:
channelIndexList = []
for channel in channelList:
if channel not in dataOut.channelList:
George Yong
Python 2to3, Spectra (all operations) working
r1167 raise ValueError("Channel %d is not in dataOut.channelList")
Julio Valdez
-Parameters Plot corrected...
r832 channelIndexList.append(dataOut.channelList.index(channel))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 x = dataOut.getTimeRange1(dataOut.paramInterval)
y = dataOut.getHeiRange()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if dataOut.data_param.ndim == 3:
z = dataOut.data_param[channelIndexList,paramIndex,:]
else:
z = dataOut.data_param[channelIndexList,:]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if showSNR:
#SNR data
SNRarray = dataOut.data_SNR[channelIndexList,:]
SNRdB = 10*numpy.log10(SNRarray)
ind = numpy.where(SNRdB < SNRthresh)
z[ind] = numpy.nan
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 thisDatetime = dataOut.datatime
# thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
title = wintitle + " Parameters Plot" #: %s" %(thisDatetime.strftime("%d-%b-%Y"))
xlabel = ""
ylabel = "Range (Km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 update_figfile = False
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 nchan = len(channelIndexList)
self.nchan = nchan
self.plotFact = 1
nplots = nchan
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if showSNR:
nplots = nchan*2
self.plotFact = 2
if SNRmin == None: SNRmin = numpy.nanmin(SNRdB)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 if SNRmax == None: SNRmax = numpy.nanmax(SNRdB)
Julio Valdez
-Parameters Plot corrected...
r832 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if timerange != None:
self.timerange = timerange
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if ymin == None: ymin = numpy.nanmin(y)
if ymax == None: ymax = numpy.nanmax(y)
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if zmin == None: zmin = numpy.nanmin(z)
if zmax == None: zmax = numpy.nanmax(z)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
self.isConfig = True
self.figfile = figfile
update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 for i in range(self.nchan):
index = channelIndexList[i]
title = "Channel %d: %s" %(dataOut.channelList[index], thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[i*self.plotFact]
z1 = z[i,:].reshape((1,-1))
axes.pcolorbuffer(x, y, z1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
ticksize=9, cblabel='', cbsize="1%",colormap=colormap)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if showSNR:
title = "Channel %d SNR: %s" %(dataOut.channelList[index], thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[i*self.plotFact + 1]
SNRdB1 = SNRdB[i,:].reshape((1,-1))
axes.pcolorbuffer(x, y, SNRdB1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=SNRmin, zmax=SNRmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
ticksize=9, cblabel='', cbsize="1%",colormap='jet')
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 if dataOut.ltctime >= self.xmax:
self.counter_imagwr = wr_period
self.isConfig = False
update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Parameters Plot corrected...
r832 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime,
update_figfile=update_figfile)
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 return dataOut
@MPDecorator
Erick Valdez
cambio
r870 class Parameters1Plot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 __isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 WIDTHPROF = None
HEIGHTPROF = None
Julio Valdez
New Graphic added: ParametersPlot, plot a user selected parameter as RTI.
r512 PREFIX = 'prm'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 def __init__(self):
Figure.__init__(self)
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.timerange = 2*60*60
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.WIDTH = 800
José Chávez
checking misspelled kwargs in operations/processing units
r929 self.HEIGHT = 180
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.PLOT_CODE = PARMS_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 self.tmin = None
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.tmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.xmin = None
self.xmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 ncol = 1
nrow = self.nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 counter = 0
for y in range(nrow):
for x in range(ncol):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 if showprofile:
self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 def run(self, dataOut, id, wintitle="", channelList=None, showprofile=False,
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,timerange=None,
Julio Valdez
-Functional HDF5 file writer unit...
r543 parameterIndex = None, onlyPositive = False,
Julio Valdez
data...
r608 SNRthresh = -numpy.inf, SNR = True, SNRmin = None, SNRmax = None, onlySNR = False,
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 DOP = True,
Julio Valdez
-Functional HDF5 file writer unit...
r543 zlabel = "", parameterName = "", parameterObject = "data_param",
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 save=False, figpath='./', lastone=0,figfile=None, ftp=False, wr_period=1, show=True,
Julio Valdez
-Added Radial Velocity graphic ...
r511 server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
José Chávez
checking misspelled kwargs in operations/processing units
r929 #print inspect.getargspec(self.run).args
Julio Valdez
-Added Radial Velocity graphic ...
r511 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 if dataOut.flagNoData:
return dataOut
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Functional HDF5 file writer unit...
r543 data_param = getattr(dataOut, parameterObject)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 if channelList == None:
Julio Valdez
-Functional HDF5 file writer unit...
r543 channelIndexList = numpy.arange(data_param.shape[0])
Julio Valdez
-Added Radial Velocity graphic ...
r511 else:
Julio Valdez
-jrodata, parameters class bug fixed...
r550 channelIndexList = numpy.array(channelList)
Julio Valdez
-Functional HDF5 file writer unit...
r543
Julio Valdez
ParametersPlot: Corrections and SNR graphic added.
r548 nchan = len(channelIndexList) #Number of channels being plotted
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 if nchan < 1:
return
nGraphsByChannel = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 if SNR:
nGraphsByChannel += 1
if DOP:
nGraphsByChannel += 1
if nGraphsByChannel < 1:
return
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 nplots = nGraphsByChannel*nchan
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if timerange is not None:
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.timerange = timerange
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 #tmin = None
#tmax = None
Julio Valdez
-Functional HDF5 file writer unit...
r543 if parameterIndex == None:
parameterIndex = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 x = dataOut.getTimeRange1(dataOut.paramInterval)
Julio Valdez
-Functional HDF5 file writer unit...
r543 y = dataOut.heightList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
MADReader support for HDF5 (mad2 & mad3)
r1065 if dataOut.data_param.ndim == 3:
z = dataOut.data_param[channelIndexList,parameterIndex,:]
else:
z = dataOut.data_param[channelIndexList,:]
Julio Valdez
ParametersPlot: Corrections and SNR graphic added.
r548
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if dataOut.data_SNR is not None:
MADReader support for HDF5 (mad2 & mad3)
r1065 if dataOut.data_SNR.ndim == 2:
SNRavg = numpy.average(dataOut.data_SNR, axis=0)
else:
SNRavg = dataOut.data_SNR
SNRdB = 10*numpy.log10(SNRavg)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
Julio Valdez
New Graphic added: ParametersPlot, plot a user selected parameter as RTI.
r512 title = wintitle + " Parameters Plot" #: %s" %(thisDatetime.strftime("%d-%b-%Y"))
Julio Valdez
-Added Radial Velocity graphic ...
r511 xlabel = ""
MADReader support for HDF5 (mad2 & mad3)
r1065 ylabel = "Range (Km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
New Graphic added: ParametersPlot, plot a user selected parameter as RTI.
r512 if onlyPositive:
colormap = "jet"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 zmin = 0
Julio Valdez
New Graphic added: ParametersPlot, plot a user selected parameter as RTI.
r512 else: colormap = "RdBu_r"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug plotting RTI fixed for jroplot_heispectra, jroplot_parameters, jroplot_spectra
r567 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 if ymin == None: ymin = numpy.nanmin(y)
if ymax == None: ymax = numpy.nanmax(y)
MADReader support for HDF5 (mad2 & mad3)
r1065 if zmin == None: zmin = numpy.nanmin(z)
if zmax == None: zmax = numpy.nanmax(z)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 if SNR:
Julio Valdez
ParametersPlot: Corrections and SNR graphic added.
r548 if SNRmin == None: SNRmin = numpy.nanmin(SNRdB)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 if SNRmax == None: SNRmax = numpy.nanmax(SNRdB)
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = True
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.figfile = figfile
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Added Radial Velocity graphic ...
r511 if ((self.xmax - x[1]) < (x[1]-x[0])):
x[1] = self.xmax
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
ParametersPlot: Corrections and SNR graphic added.
r548 for i in range(nchan):
Julio Valdez
data...
r608
if (SNR and not onlySNR): j = 2*i
else: j = i
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 j = nGraphsByChannel*i
Julio Valdez
data...
r608
if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
title = title + '_' + 'azimuth,zenith=%2.2f,%2.2f'%(dataOut.azimuth, dataOut.zenith)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 if not onlySNR:
axes = self.axesList[j*self.__nsubplots]
z1 = z[i,:].reshape((1,-1))
axes.pcolorbuffer(x, y, z1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,colormap=colormap,
ticksize=9, cblabel=zlabel, cbsize="1%")
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 if DOP:
Miguel Valdez
Channel title was fixed in plots
r713 title = "%s Channel %d: %s" %(parameterName, channelIndexList[i], thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
parametrs plotting: SNR and DOP arguments have been added
r588 if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
title = title + '_' + 'azimuth,zenith=%2.2f,%2.2f'%(dataOut.azimuth, dataOut.zenith)
axes = self.axesList[j]
z1 = z[i,:].reshape((1,-1))
axes.pcolorbuffer(x, y, z1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,colormap=colormap,
ticksize=9, cblabel=zlabel, cbsize="1%")
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
MADReader support for HDF5 (mad2 & mad3)
r1065 if SNR:
title = "Channel %d Signal Noise Ratio (SNR): %s" %(channelIndexList[i], thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[(j)*self.__nsubplots]
if not onlySNR:
axes = self.axesList[(j + 1)*self.__nsubplots]
Julio Valdez
data...
r608
MADReader support for HDF5 (mad2 & mad3)
r1065 axes = self.axesList[(j + nGraphsByChannel-1)]
z1 = SNRdB.reshape((1,-1))
axes.pcolorbuffer(x, y, z1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=SNRmin, zmax=SNRmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,colormap="jet",
ticksize=9, cblabel=zlabel, cbsize="1%")
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
New Graphic added: ParametersPlot, plot a user selected parameter as RTI.
r512
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if x[1] >= self.axesList[0].xmax:
self.counter_imagwr = wr_period
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime,
update_figfile=False)
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 return dataOut
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 class SpectralFittingPlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 __isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'prm'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 N = None
ippSeconds = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.PLOT_CODE = SPECFIT_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.WIDTH = 450
self.HEIGHT = 250
self.WIDTHPROF = 0
self.HEIGHTPROF = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 ncol = int(numpy.sqrt(self.nplots)+0.9)
nrow = int(self.nplots*1./ncol + 0.9)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 def setup(self, id, nplots, wintitle, showprofile=False, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
showprofile = False
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 ncolspan = 5
colspan = 4
if showprofile:
ncolspan = 5
colspan = 4
self.__nsubplots = 2
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 counter = 0
for y in range(nrow):
for x in range(ncol):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if showprofile:
self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 def run(self, dataOut, id, cutHeight=None, fit=False, wintitle="", channelList=None, showprofile=True,
xmin=None, xmax=None, ymin=None, ymax=None,
save=False, figpath='./', figfile=None, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
zmin : None,
zmax : None
"""
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if cutHeight==None:
h=270
heightindex = numpy.abs(cutHeight - dataOut.heightList).argmin()
cutHeight = dataOut.heightList[heightindex]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 factor = dataOut.normFactor
Julio Valdez
-Functional HDF5 file writer unit...
r543 x = dataOut.abscissaList[:-1]
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 #y = dataOut.getHeiRange()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 z = dataOut.data_pre[:,:,heightindex]/factor
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 z = numpy.where(numpy.isfinite(z), z, numpy.NAN)
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 avg = numpy.average(z, axis=1)
listChannels = z.shape[0]
#Reconstruct Function
if fit==True:
groupArray = dataOut.groupList
listChannels = groupArray.reshape((groupArray.size))
listChannels.sort()
spcFitLine = numpy.zeros(z.shape)
constants = dataOut.constants
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 nGroups = groupArray.shape[0]
nChannels = groupArray.shape[1]
nProfiles = z.shape[1]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 for f in range(nGroups):
groupChann = groupArray[f,:]
p = dataOut.data_param[f,:,heightindex]
# p = numpy.array([ 89.343967,0.14036615,0.17086219,18.89835291,1.58388365,1.55099167])
fitLineAux = dataOut.library.modelFunction(p, constants)*nProfiles
fitLineAux = fitLineAux.reshape((nChannels,nProfiles))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 spcFitLine[groupChann,:] = fitLineAux
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 # spcFitLine = spcFitLine/factor
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 z = z[listChannels,:]
spcFitLine = spcFitLine[listChannels,:]
spcFitLinedB = 10*numpy.log10(spcFitLine)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 zdB = 10*numpy.log10(z)
#thisDatetime = dataOut.datatime
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 title = wintitle + " Doppler Spectra: %s" %(thisDatetime.strftime("%d-%b-%Y %H:%M:%S"))
xlabel = "Velocity (m/s)"
ylabel = "Spectrum"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 nplots = listChannels.size
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if xmin == None: xmin = numpy.nanmin(x)
if xmax == None: xmax = numpy.nanmax(x)
if ymin == None: ymin = numpy.nanmin(zdB)
if ymax == None: ymax = numpy.nanmax(zdB)+2
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.setWinTitle(title)
for i in range(self.nplots):
# title = "Channel %d: %4.2fdB" %(dataOut.channelList[i]+1, noisedB[i])
Miguel Valdez
Channel title was fixed in plots
r713 title = "Height %4.1f km\nChannel %d:" %(cutHeight, listChannels[i])
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 axes = self.axesList[i*self.__nsubplots]
if fit == False:
axes.pline(x, zdB[i,:],
xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax,
xlabel=xlabel, ylabel=ylabel, title=title
)
if fit == True:
fitline=spcFitLinedB[i,:]
y=numpy.vstack([zdB[i,:],fitline] )
legendlabels=['Data','Fitting']
axes.pmultilineyaxis(x, y,
xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax,
xlabel=xlabel, ylabel=ylabel, title=title,
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 legendlabels=legendlabels, marker=None,
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 linestyle='solid', grid='both')
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 class EWDriftsPlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 __isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'drift'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.timerange = 2*60*60
self.isConfig = False
self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.WIDTH = 800
self.HEIGHT = 150
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.PLOT_CODE = EWDRIFT_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 self.tmin = None
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.tmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.xmin = None
self.xmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 ncol = 1
nrow = self.nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 counter = 0
for y in range(nrow):
if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
self.addAxes(nrow, ncol*ncolspan, y, 0, colspan, 1)
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def run(self, dataOut, id, wintitle="", channelList=None,
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
zmaxVertical = None, zminVertical = None, zmaxZonal = None, zminZonal = None,
timerange=None, SNRthresh = -numpy.inf, SNRmin = None, SNRmax = None, SNR_1 = False,
Miguel Valdez
Merge with branch schain_julia_drifts from rev. 803 to 995....
r568 save=False, figpath='./', lastone=0,figfile=None, ftp=False, wr_period=1, show=True,
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 server=None, folder=None, username=None, password=None,
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if timerange is not None:
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.timerange = timerange
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 tmin = None
tmax = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 x = dataOut.getTimeRange1(dataOut.outputInterval)
Julio Valdez
-Functional HDF5 file writer unit...
r543 # y = dataOut.heightList
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 y = dataOut.heightList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 z = dataOut.data_output
nplots = z.shape[0] #Number of wind dimensions estimated
nplotsw = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 #If there is a SNR function defined
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if dataOut.data_SNR is not None:
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 nplots += 1
Julio Valdez
First Draft HDF5 IO module
r514 SNR = dataOut.data_SNR
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if SNR_1:
SNR += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 SNRavg = numpy.average(SNR, axis=0)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 SNRdB = 10*numpy.log10(SNR)
SNRavgdB = 10*numpy.log10(SNRavg)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 ind = numpy.where(SNRavg < 10**(SNRthresh/10))[0]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 for i in range(nplotsw):
z[i,ind] = numpy.nan
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
showprofile = False
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 # thisDatetime = dataOut.datatime
Julio Valdez
-Functional HDF5 file writer unit...
r543 thisDatetime = datetime.datetime.utcfromtimestamp(x[1])
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 title = wintitle + " EW Drifts"
xlabel = ""
ylabel = "Height (Km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug plotting RTI fixed for jroplot_heispectra, jroplot_parameters, jroplot_spectra
r567 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if ymin == None: ymin = numpy.nanmin(y)
if ymax == None: ymax = numpy.nanmax(y)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if zmaxZonal == None: zmaxZonal = numpy.nanmax(abs(z[0,:]))
if zminZonal == None: zminZonal = -zmaxZonal
if zmaxVertical == None: zmaxVertical = numpy.nanmax(abs(z[1,:]))
if zminVertical == None: zminVertical = -zmaxVertical
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if dataOut.data_SNR is not None:
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if SNRmin == None: SNRmin = numpy.nanmin(SNRavgdB)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 if SNRmax == None: SNRmax = numpy.nanmax(SNRavgdB)
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if ((self.xmax - x[1]) < (x[1]-x[0])):
x[1] = self.xmax
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 strWind = ['Zonal','Vertical']
strCb = 'Velocity (m/s)'
zmaxVector = [zmaxZonal, zmaxVertical]
zminVector = [zminZonal, zminVertical]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 for i in range(nplotsw):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 title = "%s Drifts: %s" %(strWind[i], thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[i*self.__nsubplots]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
z1 = z[i,:].reshape((1,-1))
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 axes.pcolorbuffer(x, y, z1,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zminVector[i], zmax=zmaxVector[i],
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
ticksize=9, cblabel=strCb, cbsize="1%", colormap="RdBu_r")
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if dataOut.data_SNR is not None:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 i += 1
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 if SNR_1:
title = "Signal Noise Ratio + 1 (SNR+1): %s" %(thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
else:
title = "Signal Noise Ratio (SNR): %s" %(thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
axes = self.axesList[i*self.__nsubplots]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 SNRavgdB = SNRavgdB.reshape((1,-1))
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 axes.pcolorbuffer(x, y, SNRavgdB,
xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=SNRmin, zmax=SNRmax,
xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
ticksize=9, cblabel='', cbsize="1%", colormap="jet")
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
First Spectral Fitting and EW Drifts operative module inside Signal Chain TRUNK
r513 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Bug fixed in RTI and Wind Profiler Plots, when data time exceeded the xmax, the new plot generated was overwriting the first one.
r509 if x[1] >= self.axesList[0].xmax:
self.counter_imagwr = wr_period
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Miguel Valdez
A new SendToServer Unit has been created to upload files to a remote server....
r573 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 class PhasePlot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 __isConfig = None
__nsubplots = None
PREFIX = 'mphase'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
José Chávez
paramter.py helper
r955
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Julio Valdez
data...
r608 self.timerange = 24*60*60
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
data...
r608 self.__nsubplots = 1
self.counter_imagwr = 0
self.WIDTH = 600
self.HEIGHT = 300
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.xdata = None
self.ydata = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.PLOT_CODE = MPHASE_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.filename_phase = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.figfile = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 ncol = 1
nrow = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.__showprofile = showprofile
self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 ncolspan = 7
colspan = 6
self.__nsubplots = 2
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH+self.WIDTHPROF,
heightplot = self.HEIGHT+self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.addAxes(nrow, ncol*ncolspan, 0, 0, colspan, 1)
def run(self, dataOut, id, wintitle="", pairsList=None, showprofile='True',
xmin=None, xmax=None, ymin=None, ymax=None,
timerange=None,
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
Julio Valdez
data...
r608 server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 tmin = None
tmax = None
Julio Valdez
-Functional HDF5 Format Writing and Reading Unit...
r804 x = dataOut.getTimeRange1(dataOut.outputInterval)
Julio Valdez
data...
r608 y = dataOut.getHeiRange()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 #thisDatetime = dataOut.datatime
Julio Valdez
Bug fixed when plot changed from one day to the next
r852 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.ltctime)
Julio Valdez
data...
r608 title = wintitle + " Phase of Beacon Signal" # : %s" %(thisDatetime.strftime("%d-%b-%Y"))
xlabel = "Local Time"
ylabel = "Phase"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 #phase = numpy.zeros((len(pairsIndexList),len(dataOut.beacon_heiIndexList)))
phase_beacon = dataOut.data_output
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = False
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.nplots = phase_beacon.size
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.setup(id=id,
nplots=self.nplots,
wintitle=wintitle,
showprofile=showprofile,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Miguel Valdez
-Bug fixed: selecting channels and cross pairs...
r612 if timerange is not None:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 self.timerange = timerange
Julio Valdez
-timerange bug fix at Meteor Phase Plot...
r610 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 if ymin == None: ymin = numpy.nanmin(phase_beacon) - 10.0
if ymax == None: ymax = numpy.nanmax(phase_beacon) + 10.0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = True
Julio Valdez
data...
r608 self.figfile = figfile
self.xdata = numpy.array([])
self.ydata = numpy.array([])
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 #open file beacon phase
path = '%s%03d' %(self.PREFIX, self.id)
beacon_file = os.path.join(path,'%s.txt'%self.name)
self.filename_phase = os.path.join(figpath,beacon_file)
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 #store data beacon phase
#self.save_data(self.filename_phase, phase_beacon, thisDatetime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.setWinTitle(title)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 title = "Phase Offset %s" %(thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 legendlabels = ["phase %d"%(chan) for chan in numpy.arange(self.nplots)]
axes = self.axesList[0]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.xdata = numpy.hstack((self.xdata, x[0:1]))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 if len(self.ydata)==0:
self.ydata = phase_beacon.reshape(-1,1)
else:
self.ydata = numpy.hstack((self.ydata, phase_beacon.reshape(-1,1)))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 axes.pmultilineyaxis(x=self.xdata, y=self.ydata,
Julio Valdez
-timerange bug fix at Meteor Phase Plot...
r610 xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax,
Julio Valdez
data...
r608 xlabel=xlabel, ylabel=ylabel, title=title, legendlabels=legendlabels, marker='x', markersize=8, linestyle="solid",
XAxisAsTime=True, grid='both'
)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
data...
r608 self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Bug fixed when plot changed from one day to the next
r852 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime,
update_figfile=update_figfile)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Bug fixed when plot changed from one day to the next
r852 if dataOut.ltctime + dataOut.outputInterval >= self.xmax:
Julio Valdez
data...
r608 self.counter_imagwr = wr_period
Miguel Valdez
Bug fixed in jroplot_heispectra: Error when RTI creates a new graphic (lctime > Tmax)
r793 self.isConfig = False
Julio Valdez
Bug fixed in Sky Map and Phase Plots
r786 update_figfile = True
Julio Valdez
Bug fixed when plot changed from one day to the next
r852
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 class NSMeteorDetection1Plot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'nsm'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 zminList = None
zmaxList = None
cmapList = None
titleList = None
nPairs = None
nChannels = None
nParam = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.isConfig = False
self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.WIDTH = 750
self.HEIGHT = 250
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.PLOT_CODE = SPEC_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.__xfilter_ena = False
self.__yfilter_ena = False
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 ncol = 3
nrow = int(numpy.ceil(self.nplots/3.0))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 def setup(self, id, nplots, wintitle, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 counter = 0
for y in range(nrow):
for x in range(ncol):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 def run(self, dataOut, id, wintitle="", channelList=None, showprofile=True,
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 xmin=None, xmax=None, ymin=None, ymax=None, SNRmin=None, SNRmax=None,
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 vmin=None, vmax=None, wmin=None, wmax=None, mode = 'SA',
save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, realtime=False,
xaxis="frequency"):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
#SEPARAR EN DOS PLOTS
nParam = dataOut.data_param.shape[1] - 3
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
utctime = dataOut.data_param[0,0]
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 tmet = dataOut.data_param[:,1].astype(int)
hmet = dataOut.data_param[:,2].astype(int)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 x = dataOut.abscissaList
y = dataOut.heightList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 z = numpy.zeros((nParam, y.size, x.size - 1))
z[:,:] = numpy.nan
z[:,hmet,tmet] = dataOut.data_param[:,3:].T
z[0,:,:] = 10*numpy.log10(z[0,:,:])
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 xlabel = "Time (s)"
ylabel = "Range (km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.ltctime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 nplots = nParam
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if xmin is None: xmin = numpy.nanmin(x)
if xmax is None: xmax = numpy.nanmax(x)
if ymin is None: ymin = numpy.nanmin(y)
if ymax is None: ymax = numpy.nanmax(y)
if SNRmin is None: SNRmin = numpy.nanmin(z[0,:])
if SNRmax is None: SNRmax = numpy.nanmax(z[0,:])
if vmax is None: vmax = numpy.nanmax(numpy.abs(z[1,:]))
if vmin is None: vmin = -vmax
if wmin is None: wmin = 0
if wmax is None: wmax = 50
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 pairsList = dataOut.groupList
self.nPairs = len(dataOut.groupList)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 zminList = [SNRmin, vmin, cmin] + [pmin]*self.nPairs
zmaxList = [SNRmax, vmax, cmax] + [pmax]*self.nPairs
titleList = ["SNR","Radial Velocity","Coherence"]
cmapList = ["jet","RdBu_r","jet"]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 for i in range(self.nPairs):
strAux1 = "Phase Difference "+ str(pairsList[i][0]) + str(pairsList[i][1])
titleList = titleList + [strAux1]
cmapList = cmapList + ["RdBu_r"]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.zminList = zminList
self.zmaxList = zmaxList
self.cmapList = cmapList
self.titleList = titleList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.isConfig = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
for i in range(nParam):
title = self.titleList[i] + ": " +str_datetime
axes = self.axesList[i]
axes.pcolor(x, y, z[i,:].T,
xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=self.zminList[i], zmax=self.zmaxList[i],
xlabel=xlabel, ylabel=ylabel, title=title, colormap=self.cmapList[i],ticksize=9, cblabel='')
self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if figfile == None:
str_datetime = thisDatetime.strftime("%Y%m%d_%H%M%S")
name = str_datetime
if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 name = name + '_az' + '_%2.2f'%(dataOut.azimuth) + '_zn' + '_%2.2f'%(dataOut.zenith)
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 figfile = self.getFilename(name)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
thisDatetime=thisDatetime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841
class NSMeteorDetection2Plot(Figure):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 isConfig = None
__nsubplots = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 WIDTHPROF = None
HEIGHTPROF = None
PREFIX = 'nsm'
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 zminList = None
zmaxList = None
cmapList = None
titleList = None
nPairs = None
nChannels = None
nParam = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
def __init__(self, **kwargs):
Figure.__init__(self, **kwargs)
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.isConfig = False
self.__nsubplots = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.WIDTH = 750
self.HEIGHT = 250
self.WIDTHPROF = 120
self.HEIGHTPROF = 0
self.counter_imagwr = 0
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.PLOT_CODE = SPEC_CODE
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.FTP_WEI = None
self.EXP_CODE = None
self.SUB_EXP_CODE = None
self.PLOT_POS = None
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.__xfilter_ena = False
self.__yfilter_ena = False
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 def getSubplots(self):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 ncol = 3
nrow = int(numpy.ceil(self.nplots/3.0))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 return nrow, ncol
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 def setup(self, id, nplots, wintitle, show=True):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.nplots = nplots
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 ncolspan = 1
colspan = 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.createFigure(id = id,
wintitle = wintitle,
widthplot = self.WIDTH + self.WIDTHPROF,
heightplot = self.HEIGHT + self.HEIGHTPROF,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 nrow, ncol = self.getSubplots()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 counter = 0
for y in range(nrow):
for x in range(ncol):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if counter >= self.nplots:
break
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 counter += 1
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 def run(self, dataOut, id, wintitle="", channelList=None, showprofile=True,
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 xmin=None, xmax=None, ymin=None, ymax=None, SNRmin=None, SNRmax=None,
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 vmin=None, vmax=None, wmin=None, wmax=None, mode = 'SA',
save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
server=None, folder=None, username=None, password=None,
ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, realtime=False,
xaxis="frequency"):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 """
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 Input:
dataOut :
id :
wintitle :
channelList :
showProfile :
xmin : None,
xmax : None,
ymin : None,
ymax : None,
zmin : None,
zmax : None
"""
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 #Rebuild matrix
utctime = dataOut.data_param[0,0]
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 cmet = dataOut.data_param[:,1].astype(int)
tmet = dataOut.data_param[:,2].astype(int)
hmet = dataOut.data_param[:,3].astype(int)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 nParam = 3
nChan = len(dataOut.groupList)
x = dataOut.abscissaList
y = dataOut.heightList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 z = numpy.full((nChan, nParam, y.size, x.size - 1),numpy.nan)
z[cmet,:,hmet,tmet] = dataOut.data_param[:,4:]
z[:,0,:,:] = 10*numpy.log10(z[:,0,:,:]) #logarithmic scale
z = numpy.reshape(z, (nChan*nParam, y.size, x.size-1))
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 xlabel = "Time (s)"
ylabel = "Range (km)"
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.ltctime)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if not self.isConfig:
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 nplots = nParam*nChan
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.setup(id=id,
nplots=nplots,
wintitle=wintitle,
show=show)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if xmin is None: xmin = numpy.nanmin(x)
if xmax is None: xmax = numpy.nanmax(x)
if ymin is None: ymin = numpy.nanmin(y)
if ymax is None: ymax = numpy.nanmax(y)
if SNRmin is None: SNRmin = numpy.nanmin(z[0,:])
if SNRmax is None: SNRmax = numpy.nanmax(z[0,:])
if vmax is None: vmax = numpy.nanmax(numpy.abs(z[1,:]))
if vmin is None: vmin = -vmax
if wmin is None: wmin = 0
if wmax is None: wmax = 50
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.nChannels = nChan
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
zminList = []
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 zmaxList = []
titleList = []
cmapList = []
for i in range(self.nChannels):
strAux1 = "SNR Channel "+ str(i)
strAux2 = "Radial Velocity Channel "+ str(i)
strAux3 = "Spectral Width Channel "+ str(i)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 titleList = titleList + [strAux1,strAux2,strAux3]
cmapList = cmapList + ["jet","RdBu_r","jet"]
zminList = zminList + [SNRmin,vmin,wmin]
zmaxList = zmaxList + [SNRmax,vmax,wmax]
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.zminList = zminList
self.zmaxList = zmaxList
self.cmapList = cmapList
self.titleList = titleList
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.FTP_WEI = ftp_wei
self.EXP_CODE = exp_code
self.SUB_EXP_CODE = sub_exp_code
self.PLOT_POS = plot_pos
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.isConfig = True
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
for i in range(self.nplots):
title = self.titleList[i] + ": " +str_datetime
axes = self.axesList[i]
axes.pcolor(x, y, z[i,:].T,
xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=self.zminList[i], zmax=self.zmaxList[i],
xlabel=xlabel, ylabel=ylabel, title=title, colormap=self.cmapList[i],ticksize=9, cblabel='')
self.draw()
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 if figfile == None:
str_datetime = thisDatetime.strftime("%Y%m%d_%H%M%S")
name = str_datetime
if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897 name = name + '_az' + '_%2.2f'%(dataOut.azimuth) + '_zn' + '_%2.2f'%(dataOut.zenith)
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 figfile = self.getFilename(name)
José Chávez
cambiados los kwargs para cada operacion/unidad de procesamiento
r897
Julio Valdez
Parameters libraries reorganized, now each operation is a separated class
r841 self.save(figpath=figpath,
figfile=figfile,
save=save,
ftp=ftp,
wr_period=wr_period,
George Yong
Multiprocessing for writing Units(Spectral, Voltage and Parameters)
r1179 thisDatetime=thisDatetime)