From d08bdce68e0006c524d587392111560d3f36d7df 2022-05-31 13:38:28 From: Juan C. Espinoza Date: 2022-05-31 13:38:28 Subject: [PATCH] update fix axes, test de prueba de canales --- diff --git a/schainpy/model/graphics/jroplot_base.py b/schainpy/model/graphics/jroplot_base.py index 9537477..2b85715 100644 --- a/schainpy/model/graphics/jroplot_base.py +++ b/schainpy/model/graphics/jroplot_base.py @@ -414,7 +414,7 @@ class Plot(Operation): for tick in self.pf_axes[n].get_yticklabels()] if self.colorbar: ax.cbar = plt.colorbar( - ax.plt, ax=ax, fraction=0.05, pad=0.02, aspect=10) + ax.plt, ax=ax, fraction=0.05, pad=0.06, aspect=10) ax.cbar.ax.tick_params(labelsize=8) ax.cbar.ax.press = None if self.cb_label: @@ -445,7 +445,7 @@ class Plot(Operation): size=8) ax.set_ylim(0, self.ymax) #ax.set_yticks(numpy.arange(0, self.ymax, 20)) - ax.yaxis.labelpad = 20 + ax.yaxis.labelpad = 28 if self.firsttime: for n, fig in enumerate(self.figures): @@ -515,7 +515,7 @@ class Plot(Operation): self.save_time = self.data.max_time fig = self.figures[n] - + if self.throttle == 0: if self.oneFigure: figname = os.path.join( diff --git a/schainpy/model/graphics/jroplot_parameters.py b/schainpy/model/graphics/jroplot_parameters.py index 861b477..275ec79 100644 --- a/schainpy/model/graphics/jroplot_parameters.py +++ b/schainpy/model/graphics/jroplot_parameters.py @@ -1826,7 +1826,7 @@ class WeatherParamsPlot(Plot): self.len_azi =0 self.buffer_ini = None self.buffer_ele = None - self.plots_adjust.update({'wspace': 0.4, 'hspace':0.4, 'left': 0.08, 'right': 0.92, 'bottom': 0.01,'top':0.99}) + self.plots_adjust.update({'wspace': 0.4, 'hspace':0.4, 'left': 0.1, 'right': 0.9, 'bottom': 0.08}) self.flag =0 self.indicador= 0 self.last_data_ele = None diff --git a/schainpy/scripts/TEST_NOISE.py b/schainpy/scripts/TEST_NOISE.py new file mode 100644 index 0000000..4053b3e --- /dev/null +++ b/schainpy/scripts/TEST_NOISE.py @@ -0,0 +1,362 @@ +#!python +''' +''' + +import os, sys +import datetime +import time + +#path = os.path.dirname(os.getcwd()) +#path = os.path.dirname(path) +#sys.path.insert(0, path) + +from schainpy.controller import Project + +desc = "USRP_test" +filename = "USRP_processing.xml" +controllerObj = Project() +controllerObj.setup(id = '191', name='Test_USRP', description=desc) + +############## USED TO PLOT IQ VOLTAGE, POWER AND SPECTRA ############# + +####################################################################### +######PATH DE LECTURA, ESCRITURA, GRAFICOS Y ENVIO WEB################# +####################################################################### +#path = '/media/data/data/vientos/57.2063km/echoes/NCO_Woodman' +#path = '/DATA_RM/TEST_INTEGRACION' +#path = '/DATA_RM/PRUEBA_USRP_RP' +#path = '/DATA_RM/PRUEBA_USRP_RP' + +path = '/DATA_RM/TEST_2M' +path = '/DATA_RM/TEST_2M_UD' +path = '/DATA_RM/2MHZ17022022' +path = '/DATA_RM/10MHZTEST/' +path = '/DATA_RM/10MHZDRONE/' + + +path= '/home/soporte/TEST_500mVPP' +path= '/home/soporte/TEST_1VPP+500mVDC' +path = '/home/soporte/TEST_500mVPP+500mVDC' +path = '/home/soporte/TEST_1.5VPP' +path = '/home/soporte/TEST_2VPP' +path= '/home/soporte/TEST_1VPP' +path = '/home/soporte/Documents/HUANCAYO/TEST_HYO_PM@2022-05-14T11-28-19/rawdata' + +#HYO_PM@2022-05-28T00-00-17 +path = '/DATA_RM/DATA/HYO_PM@2022-05-28T00-00-17/rawdata' + +#figpath = '/home/soporte/Pictures/TEST_RP_0001' +#figpath = '/home/soporte/Pictures/TEST_RP_6000' +figpath = '/home/soporte/Pictures/USRP_TEST_2M' +figpath = '/home/soporte/Pictures/USRP_TEST_2M_UD' +figpath = '/home/soporte/Pictures/10MHZDRONE' +figpath = '/home/soporte/Pictures/500mVPP' +figpath = '/home/soporte/Pictures/1VPP+500mVDC' +figpath = '/home/soporte/Pictures/TEST_500mVPP+500mVDC' +figpath = '/home/soporte/Pictures/TEST_1.5VPP' +figpath = '/home/soporte/Pictures/TEST_2VPP' +figpath = '/home/soporte/Pictures/TEST_1VPP' + + + + +#remotefolder = "/home/wmaster/graficos" +####################################################################### +################# RANGO DE PLOTEO###################################### +####################################################################### +dBmin = '-60'#'-20' +dBmax = '-5'#'-85' +xmin = '0' +xmax ='24' +ymin = '0' +ymax = '10' +####################################################################### +########################FECHA########################################## +####################################################################### +str = datetime.date.today() +today = str.strftime("%Y/%m/%d") +str2 = str - datetime.timedelta(days=1) +yesterday = str2.strftime("%Y/%m/%d") +####################################################################### +######################## UNIDAD DE LECTURA############################# +####################################################################### +readUnitConfObj = controllerObj.addReadUnit(datatype='DigitalRFReader', + path=path, + startDate="2022/05/28",#today, + endDate="2022/05/28",#today, + startTime='00:00:00',# inicio libre + #startTime='00:00:00', + endTime='23:59:59', + delay=0, + #set=0, + online=0, + walk=1, + ippKm = 60) + +opObj11 = readUnitConfObj.addOperation(name='printInfo') +#opObj11 = readUnitConfObj.addOperation(name='printNumberOfBlock') +####################################################################### +################ OPERACIONES DOMINIO DEL TIEMPO######################## +####################################################################### + +procUnitConfObjA = controllerObj.addProcUnit(datatype='VoltageProc', inputId=readUnitConfObj.getId()) + +op3 = procUnitConfObjA.addOperation(name='ProfileSelector', optype='other') +op3.addParameter(name='profileRangeList', value='1,123') + + +code=[[1]] + +opObj11 = procUnitConfObjA.addOperation(name='Decoder', optype='other') +opObj11.addParameter(name='code', value=code) +opObj11.addParameter(name='nCode', value='1', format='int') +opObj11.addParameter(name='nBaud', value='1', format='int') + + +''' +op3 = procUnitConfObjA.addOperation(name='ProfileSelector', optype='other') +op3.addParameter(name='profileRangeList', value='122,249') +code8=[[1,1,1,0,1,1,0,1],[1,1,1,0,0,0,1,0]] + +opObj11 = procUnitConfObjA.addOperation(name='Decoder', optype='other') +opObj11.addParameter(name='code', value=code8) +opObj11.addParameter(name='nCode', value='2', format='int') +opObj11.addParameter(name='nBaud', value='8', format='int') +''' +op = procUnitConfObjA.addOperation(name='CohInt', optype='other') #Minimo integrar 2 perfiles por ser codigo complementario +op.addParameter(name='n', value=2, format='int') + + +''' + +# OJO SCOPE +opObj10 = procUnitConfObjA.addOperation(name='ScopePlot', optype='external') +opObj10.addParameter(name='id', value='10', format='int') +opObj10.addParameter(name='xmin', value='0', format='int') +opObj10.addParameter(name='xmax', value='60', format='int') +opObj10.addParameter(name='type', value='iq') +#opObj10.addParameter(name='ymin', value='-0.20000', format='int') +#opObj10.addParameter(name='ymax', value='0.20000', format='int') +opObj10.addParameter(name='save', value=figpath, format='str') +opObj10.addParameter(name='save_period', value=1, format='int') +''' +''' +opObj11 = procUnitConfObjA.addOperation(name='selectHeights') +opObj11.addParameter(name='minIndex', value='1', format='int') +# opObj11.addParameter(name='maxIndex', value='10000', format='int') +opObj11.addParameter(name='maxIndex', value='200', format='int') +''' +# +# codigo64='1,1,1,0,1,1,0,1,1,1,1,0,0,0,1,0,1,1,1,0,1,1,0,1,0,0,0,1,1,1,0,1,1,1,1,0,1,1,0,1,1,1,1,0,0,0,1,0,0,0,0,1,0,0,1,0,1,1,1,0,0,0,1,0,'+\ +# '1,1,1,0,1,1,0,1,1,1,1,0,0,0,1,0,1,1,1,0,1,1,0,1,0,0,0,1,1,1,0,1,0,0,0,1,0,0,1,0,0,0,0,1,1,1,0,1,1,1,1,0,1,1,0,1,0,0,0,1,1,1,0,1' + +#opObj11 = procUnitConfObjA.addOperation(name='setRadarFrequency') +#opObj11.addParameter(name='frequency', value='49920000') + +''' +opObj11 = procUnitConfObjA.addOperation(name='PulsePair', optype='other') +opObj11.addParameter(name='n', value='625', format='int')#10 +opObj11.addParameter(name='removeDC', value=1, format='int') +''' + +# Ploteo TEST +''' +opObj11 = procUnitConfObjA.addOperation(name='PulsepairPowerPlot', optype='other') +opObj11 = procUnitConfObjA.addOperation(name='PulsepairSignalPlot', optype='other') +opObj11 = procUnitConfObjA.addOperation(name='PulsepairVelocityPlot', optype='other') +#opObj11.addParameter(name='xmax', value=8) +opObj11 = procUnitConfObjA.addOperation(name='PulsepairSpecwidthPlot', optype='other') +''' +# OJO SCOPE +#opObj10 = procUnitConfObjA.addOperation(name='ScopePlot', optype='external') +#opObj10.addParameter(name='id', value='10', format='int') +##opObj10.addParameter(name='xmin', value='0', format='int') +##opObj10.addParameter(name='xmax', value='50', format='int') +#opObj10.addParameter(name='type', value='iq') +##opObj10.addParameter(name='ymin', value='-5000', format='int') +##opObj10.addParameter(name='ymax', value='8500', format='int') +#opObj11.addParameter(name='save', value=figpath, format='str') +#opObj11.addParameter(name='save_period', value=10, format='int') + +#opObj10 = procUnitConfObjA.addOperation(name='setH0') +#opObj10.addParameter(name='h0', value='-5000', format='float') + +#opObj11 = procUnitConfObjA.addOperation(name='filterByHeights') +#opObj11.addParameter(name='window', value='1', format='int') + +#codigo='1,1,-1,1,1,-1,1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,1,1,1,1,-1,-1,-1' +#opObj11 = procUnitConfObjSousy.addOperation(name='Decoder', optype='other') +#opObj11.addParameter(name='code', value=codigo, format='floatlist') +#opObj11.addParameter(name='nCode', value='1', format='int') +#opObj11.addParameter(name='nBaud', value='28', format='int') + +#opObj11 = procUnitConfObjA.addOperation(name='CohInt', optype='other') +#opObj11.addParameter(name='n', value='100', format='int') + +####################################################################### +########## OPERACIONES ParametersProc######################## +####################################################################### +###procUnitConfObjB= controllerObj.addProcUnit(datatype='ParametersProc',inputId=procUnitConfObjA.getId()) +''' + +opObj11 = procUnitConfObjA.addOperation(name='PedestalInformation') +opObj11.addParameter(name='path_ped', value=path_ped) +opObj11.addParameter(name='path_adq', value=path_adq) +opObj11.addParameter(name='t_Interval_p', value='0.01', format='float') +opObj11.addParameter(name='n_Muestras_p', value='100', format='float') +opObj11.addParameter(name='blocksPerfile', value='100', format='int') +opObj11.addParameter(name='f_a_p', value='25', format='int') +opObj11.addParameter(name='online', value='0', format='int') + +opObj11 = procUnitConfObjA.addOperation(name='Block360') +opObj11.addParameter(name='n', value='40', format='int') + +opObj11= procUnitConfObjA.addOperation(name='WeatherPlot',optype='other') +opObj11.addParameter(name='save', value=figpath) +opObj11.addParameter(name='save_period', value=1) + +8 +''' + + +''' +opObj11 = procUnitConfObjA.addOperation(name='CohInt', optype='other') +opObj11.addParameter(name='n', value='250', format='int') +''' +####################################################################### +########## OPERACIONES DOMINIO DE LA FRECUENCIA######################## +####################################################################### +''' +procUnitConfObjB = controllerObj.addProcUnit(datatype='SpectraProc', inputId=procUnitConfObjA.getId()) +procUnitConfObjB.addParameter(name='nFFTPoints', value='64', format='int') +procUnitConfObjB.addParameter(name='nProfiles', value='64', format='int') +''' + +procUnitConfObjB = controllerObj.addProcUnit(datatype='SpectraProc', inputId=procUnitConfObjA.getId()) +procUnitConfObjB.addParameter(name='nFFTPoints', value='61', format='int') +procUnitConfObjB.addParameter(name='nProfiles', value='61', format='int') + +''' +procUnitConfObjC = controllerObj.addProcUnit(datatype='SpectraHeisProc', inputId=procUnitConfObjA.getId()) +#procUnitConfObjB.addParameter(name='nFFTPoints', value='64', format='int') +#procUnitConfObjB.addParameter(name='nProfiles', value='64', format='int') +opObj11 = procUnitConfObjC.addOperation(name='IncohInt4SpectraHeis', optype='other') +#opObj11.addParameter(name='timeInterval', value='4', format='int') +opObj11.addParameter(name='n', value='100', format='int') + +#procUnitConfObjB.addParameter(name='pairsList', value='(0,0),(1,1),(0,1)', format='pairsList') + +#opObj13 = procUnitConfObjB.addOperation(name='removeDC') +#opObj13.addParameter(name='mode', value='2', format='int') + +#opObj11 = procUnitConfObjB.addOperation(name='IncohInt', optype='other') +#opObj11.addParameter(name='n', value='8', format='float') +####################################################################### +########## PLOTEO DOMINIO DE LA FRECUENCIA############################# +####################################################################### +#---- +''' +''' +opObj11 = procUnitConfObjC.addOperation(name='SpectraHeisPlot') +opObj11.addParameter(name='id', value='10', format='int') +opObj11.addParameter(name='wintitle', value='Spectra_Alturas', format='str') +#opObj11.addParameter(name='xmin', value=-100000, format='float') +#opObj11.addParameter(name='xmax', value=100000, format='float') +opObj11.addParameter(name='oneFigure', value=False,format='bool') +#opObj11.addParameter(name='zmin', value=-10, format='int') +#opObj11.addParameter(name='zmax', value=40, format='int') +opObj11.addParameter(name='ymin', value=10, format='int') +opObj11.addParameter(name='ymax', value=55, format='int') +opObj11.addParameter(name='grid', value=True, format +[Reading] 2022-05-23 12:27:32.732775: 21333 samples <> 0.010667 sec +='bool') +#opObj11.addParameter(name='showprofile', value='1', format='int') +opObj11.addParameter(name='save', value=figpath, format='str') +#opObj11.addParameter(name='save_period', value=10, format='int') +''' +''' +opObj11 = procUnitConfObjC.addOperation(name='RTIHeisPlot') +opObj11.addParameter(name='id', value='10', format='int') +opObj11.addParameter(name='wintitle', value='RTI_Alturas', format='str') +opObj11.addParameter(name='xmin', value=11.0, format='float') +opObj11.addParameter(name='xmax', value=18.0, format='float') +opObj11.addParameter(name='zmin', value=10, format='int') +opObj11.addParameter(name='zmax', value=30, format='int') +opObj11.addParameter(name='ymin', value=5, format='int') +opObj11.addParameter(name='ymax', value=28, format='int') +opObj11.addParameter(name='showprofile', value='1', format='int') +opObj11.addParameter(name='save', value=figpath, format='str') +opObj11.addParameter(name='save_period', value=10, format='int') +''' + +#SpectraPlot + +opObj11 = procUnitConfObjB.addOperation(name='SpectraPlot', optype='external') +opObj11.addParameter(name='id', value='1', format='int') +opObj11.addParameter(name='wintitle', value='Spectra', format='str') +#opObj11.addParameter(name='xmin', value=-0.01, format='float') +#opObj11.addParameter(name='xmax', value=0.01, format='float') +opObj11.addParameter(name='zmin', value=dBmin, format='int') +opObj11.addParameter(name='zmax', value=dBmax, format='int') +opObj11.addParameter(name='ymin', value=ymin, format='int') +opObj11.addParameter(name='ymax', value=ymax, format='int') +opObj11.addParameter(name='showprofile', value='1', format='int') +opObj11.addParameter(name='save', value=figpath, format='str') +opObj11.addParameter(name='save_period', value=10, format='int') + + +#RTIPLOT +''' +opObj11 = procUnitConfObjB.addOperation(name='RTIPlot', optype='external') +opObj11.addParameter(name='id', value='2', format='int') +opObj11.addParameter(name='wintitle', value='RTIPlot', format='str') +opObj11.addParameter(name='zmin', value=dBmin, format='int') +opObj11.addParameter(name='zmax', value=dBmax, format='int') +#opObj11.addParameter(name='ymin', value=ymin, format='int') +#opObj11.addParameter(name='ymax', value=ymax, format='int') +#opObj11.addParameter(name='xmin', value=15, format='int') +#opObj11.addParameter(name='xmax', value=16, format='int') +opObj11.addParameter(name='zmin', value=dBmin, format='int') +opObj11.addParameter(name='zmax', value=dBmax, format='int') + +opObj11.addParameter(name='showprofile', value='1', format='int') +opObj11.addParameter(name='save', value=figpath, format='str') +opObj11.addParameter(name='save_period', value=10, format='int') +''' +''' +# opObj11 = procUnitConfObjB.addOperation(name='CrossSpectraPlot', optype='other') +# opObj11.addParameter(name='id', value='3', format='int') +# opObj11.addParameter(name='wintitle', value='CrossSpectraPlot', format='str') +# opObj11.addParameter(name='ymin', value=ymin, format='int') +# opObj11.addParameter(name='ymax', value=ymax, format='int') +# opObj11.addParameter(name='phase_cmap', value='jet', format='str') +# opObj11.addParameter(name='zmin', value=dBmin, format='int') +# opObj11.addParameter(name='zmax', value=dBmax, format='int') +# opObj11.addParameter(name='figpath', value=figures_path, format='str') +# opObj11.addParameter(name='save', value=0, format='bool') +# opObj11.addParameter(name='pairsList', value='(0,1)', format='pairsList') +# # +# opObj11 = procUnitConfObjB.addOperation(name='CoherenceMap', optype='other') +# opObj11.addParameter(name='id', value='4', format='int') +# opObj11.addParameter(name='wintitle', value='Coherence', format='str') +# opObj11.addParameter(name='phase_cmap', value='jet', format='str') +# opObj11.addParameter(name='xmin', value=xmin, format='float') +# opObj11.addParameter(name='xmax', value=xmax, format='float') +# opObj11.addParameter(name='figpath', value=figures_path, format='str') +# opObj11.addParameter(name='save', value=0, format='bool') +# opObj11.addParameter(name='pairsList', value='(0,1)', format='pairsList') +# +''' +''' +####################################################################### +############### UNIDAD DE ESCRITURA ################################### +####################################################################### +#opObj11 = procUnitConfObjB.addOperation(name='SpectraWriter', optype='other') +#opObj11.addParameter(name='path', value=wr_path) +#opObj11.addParameter(name='blocksPerFile', value='50', format='int') +print ("Escribiendo el archivo XML") +print ("Leyendo el archivo XML") +''' + + +controllerObj.start() diff --git a/schainpy/scripts/sophy_proc_ch0.py b/schainpy/scripts/sophy_proc_ch0.py index 813df93..2fc8b55 100644 --- a/schainpy/scripts/sophy_proc_ch0.py +++ b/schainpy/scripts/sophy_proc_ch0.py @@ -1,3 +1,4 @@ + # SOPHY PROC script import os, sys, json, argparse import datetime @@ -5,9 +6,9 @@ import time PATH = '/DATA_RM/DATA' # PATH = '/Users/jespinoza/workspace/data/' -PATH = '/home/soporte/Documents/HUANCAYO' +#PATH = '/home/soporte/Documents/HUANCAYO' PARAM = { - 'P': {'name': 'dataPP_POWER', 'zmin': -40, 'zmax': -5, 'colormap': 'jet', 'label': 'Power', 'wrname': 'Pow','cb_label': 'dB', 'ch':0}, + 'P': {'name': 'dataPP_POWER', 'zmin': -45, 'zmax': -25, 'colormap': 'jet', 'label': 'Power', 'wrname': 'Pow','cb_label': 'dB', 'ch':0}, 'V': {'name': 'dataPP_DOP', 'zmin': -20, 'zmax': 20, 'colormap': 'seismic', 'label': 'Velocity', 'wrname': 'Vel', 'cb_label': 'm/s', 'ch':0}, 'RH': {'name': 'RhoHV_R', 'zmin': 0, 'zmax': 1, 'colormap': 'jet', 'label': 'Coef.Correlacion', 'wrname':'R', 'cb_label': '*', 'ch':0}, 'FD': {'name': 'PhiD_P', 'zmin': -180,'zmax': 180,'colormap': 'RdBu_r', 'label': 'Fase Diferencial', 'wrname':'P' , 'cb_label': 'ยบ', 'ch':0}, @@ -44,7 +45,7 @@ def main(args): path_ped = os.path.join(PATH, experiment, 'position') path_plots = os.path.join(PATH, experiment, 'plots_ch0') path_save = os.path.join(PATH, experiment, 'param') - RMIX = 10 + RMIX = 20 from schainpy.controller import Project @@ -295,8 +296,8 @@ def main(args): opObj10 = proc2.addOperation(name="WeatherRadar") opObj10.addParameter(name='variableList',value='Reflectividad,AnchoEspectral') - opObj10.addParameter(name='tauW',value=3.2*1e-6) - opObj10.addParameter(name='Pt',value=1.6) + opObj10.addParameter(name='tauW',value=6.3*1e-6) + opObj10.addParameter(name='Pt',value=3.2) # {"latitude": -12.0404828587, "longitude": -75.2147483647, "altitude": 3379.2147483647} diff --git a/schainpy/scripts/sophy_proc_ch1.py b/schainpy/scripts/sophy_proc_ch1.py index 3f64f51..6eb8413 100644 --- a/schainpy/scripts/sophy_proc_ch1.py +++ b/schainpy/scripts/sophy_proc_ch1.py @@ -5,7 +5,7 @@ import time PATH = '/DATA_RM/DATA' # PATH = '/Users/jespinoza/workspace/data/' -PATH = '/home/soporte/Documents/HUANCAYO' +#PATH = '/home/soporte/Documents/HUANCAYO' PARAM = { 'P': {'name': 'dataPP_POWER', 'zmin': -50, 'zmax': -15, 'colormap': 'jet', 'label': 'Power', 'wrname': 'Pow','cb_label': 'dB', 'ch':0}, 'V': {'name': 'dataPP_DOP', 'zmin': -20, 'zmax': 20, 'colormap': 'seismic', 'label': 'Velocity', 'wrname': 'Vel', 'cb_label': 'm/s', 'ch':0},