
    Zf                     r    d dl Z d dlZd dlmZ dZd	dZd	dZd	dZedk(  r eej                  dd        yy)
    N)	arg_utilsa7  example:
  view.py velocity.h5
  view.py velocity.h5 velocity --wrap --wrap-range -2 2 -c cmy --lalo-label
  view.py velocity.h5 --ref-yx  210 566                              #change reference pixel for display
  view.py velocity.h5 --sub-lat 31.05 31.10 --sub-lon 130.05 130.10  #subset in lalo / yx
  view.py velocity.h5 velocity --mask waterBody.h5 --mask-vmax 1
  view.py velocity.h5 velocity --style scatter --scatter-size 12

  view.py timeseries.h5
  view.py timeseries.h5 --ref-date 20101120     #change reference date
  view.py timeseries.h5 --ex drop_date.txt      #exclude dates to plot
  view.py timeseries.h5 '*2017*' '*2018*'       #all acquisitions in 2017 and 2018
  view.py timeseries.h5 20200616_20200908       #reconstruct interferogram on the fly

  view.py ifgramStack.h5 coherence
  view.py ifgramStack.h5 unwrapPhase-           #unwrapPhase only in the presence of unwrapPhase_bridging
  view.py ifgramStack.h5 -n 6                   #the 6th slice
  view.py ifgramStack.h5 20171010_20171115      #all data      related with 20171010_20171115
  view.py ifgramStack.h5 'coherence*20171010*'  #all coherence related with 20171010

  # GNSS (for one subplot in geo-coordinates only)
  view.py geo_velocity_msk.h5 velocity --show-gnss --gnss-label   #show locations of available GPS
  view.py geo_velocity_msk.h5 velocity --show-gnss --gnss-comp enu2los --ref-gnss GV01
  view.py geo_velocity_msk.h5 velocity --show-gnss --gnss-comp enu2los --ref-gnss GV01 --gnss-source ESESES
  view.py geo_timeseries_ERA5_ramp_demErr.h5 20180619 --ref-date 20141213 --show-gnss --gnss-comp enu2los --ref-gnss GV01

  # Faults
  view.py filt_dense_offsets.bil range --faultline simple_fault_confident.lonlat

  # Save and Output
  view.py velocity.h5 --save
  view.py velocity.h5 --nodisplay
  view.py geo_velocity.h5 velocity --nowhitespace
c           
         d}t         }t        j                  d      d   }t        j                  |||||       }|j                  dd      }|j                  dt        d	       |j                  d
t        dg d       |j                  ddddt        dg d       |j                  dddd       |j                  dddddg d       |j                  dd d!dd"       |j                  d#d$dd%       |j                  d&d'h d(d)*       t        j                  |      }t        j                  |      }t        j                  |      }t        j                  |      }t        j                  |      }t        j                  |      }t        j                  |      }t        j                   |      }t        j"                  |      }t        j$                  |      }t        j&                  |      }|S )+NzPlot InSAR Product in 2D.)synopsisdescriptionepilog
subparsersz
Input FilezFile/Dataset to displayfilezfile for display)typehelpdset*z8optional - dataset(s) to display (default: %(default)s).)r   nargsdefaultr   z-nz
--dset-numdsetNumListNUMzMoptional - order number of date/dataset(s) to display (default: %(default)s).)destmetavarr   r   r   r   z
--nosearchsearch_dsetstore_falsez#Disable glob search for input dset.)r   actionr   z--exz	--exclude
exDsetListDsetz3dates will not be displayed (default: %(default)s).)r   r   r   r   r   z--show-keptz--show-kept-ifgramplot_drop_ifgramz@display kept interferograms only, without dropped interferogramsz--noverbose	print_msgz<Disable the verbose message printing (default: %(default)s).z--mathmath_operation>   sqrtsquaredeg2radinverserad2degreversezApply the math operation before displaying [for single subplot ONLY].
E.g. plot the std. dev. of the variance file.
  square  = x^2
  sqrt    = x^1/2
  reverse = x * -1
  inverse = 1 / x)r   choicesr   )EXAMPLE__name__splitr   create_argument_parseradd_argument_groupadd_argumentstrintadd_data_disp_argumentadd_dem_argumentadd_figure_argumentadd_gnss_argumentadd_mask_argumentadd_map_argumentadd_memory_argumentadd_point_argumentadd_reference_argumentadd_save_argumentadd_subset_argument)r
   r   r	   nameparserinfiles         H/home/exouser/operations/rsmas_insar/tools/MintPy/src/mintpy/cli/view.pycreate_parserr<   5   s
   )HF>>#r"D--xXfQ[]F &&|5NOF
S/AB
SRW  Y
lTW_blnl  n
=B  D
,VYceR  T
&:AS\i_  a K[  ] '7Az1  2 --f5F''/F**62F((0F((0F''/F**62F))&1F--f5F((0F**62FM    c                    t               }|j                  |       }ddlm}m} | r| nt
        j                  dd |_        dD ]F  }t        |      |   }|dvst        j                  j                  |      r6t        d| d	| d
       |j                  r |j                  |j                        |_        |j                  s|j                  s|j                   sd|_        |j"                  rd|_        |j&                  r|j(                  sd|_        |j*                  sd|_        d|_        d|_        |j,                  sd|_        |j4                  s|j6                  rd|_        |j:                  r=d|_        |j>                  |jA                  d       d|j                  v rtC        d       g d}tE        tG        |      tG        |j                        z        }|rAd|jI                  |jJ                        jM                         vr|D ]  }tC        d| d        |jN                  s%tC        ddjQ                  |j                               |S )zCommand line parser.)argsr   )ptimereadfile   N)r   dem_file	mask_filepts_file)Nnozinput z file z NOT exist!TrF   Fz--dem-blend requires -d/-dem.z
--cbar-extzWWARNING: --cbar-ext is NOT compatible with --dem-blend, ignore --cbar-ext and continue.)z--coordz--show-gnssz--coastlinez--lalo-labelz--lalo-stepz
--scalebarz--faultlineY_FIRSTz	WARNING: zH is NOT supported for files in radar-coordinate, ignore it and continue.zview.py ))r<   
parse_argsmintpy.utilsr@   rA   sysargvvarsospathisfileFileNotFoundErrorr   read_date_listsave_figoutfiledisp_fig	lalo_step
lalo_label	zero_maskrD   disp_whitespace	disp_axis
disp_title	disp_cbar	disp_tickflip_lrflip_ud	auto_flipdisp_dem_blenddisp_dem_shaderC   errorprintlistsetread_attributer   keysr   join)	iargsr9   inpsr@   rA   keyfnamegeo_opt_namesopt_names	            r;   cmd_line_parserp   c   s    _F%(D -
 CHHQRLDI : LT
3$RWW^^E-B#fSEwk$JKKL ..t? ==dll$--~~~~ ~~!DN>>||t||#== LL89499$kl zM]+c$))n<=M(*A*A$))*L*Q*Q*SS% 	rHIhZ'opq	r
 >>i$)),-Kr=   c                     t        |       }ddlm}  ||       }|j                  |       |j                  dk(  r|j                          y y )Nr   )viewer)rj   run)rp   mintpy.viewrr   	configureflagplot)rj   rk   rr   objs       r;   mainry      sC    % D # u
CMM$
xx5
 r=   __main__rB   )N)
rN   rK   rJ   r   r%   r<   rp   ry   r&   rL    r=   r;   <module>r|      sK    
 
 "!H+\FT z!" r=   