Changeset 1129 in lmdz_wrf for trunk


Ignore:
Timestamp:
Oct 3, 2016, 11:39:23 AM (9 years ago)
Author:
lfita
Message:

Introducing `transform' in 'plot_2D_shadow'

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tools/drawing_tools.py

    r1127 r1129  
    38353835        quit(-1)
    38363836
    3837     reva0 = ''
    3838     if reva.find('|') != 0:
    3839         revas = reva.split('|')
    3840     else:
    3841         revas = [reva]
    3842         reva0 = reva
    3843 
    3844     for rev in revas:
    3845         if reva[0:4] == 'flip':
    3846             reva0 = 'flip'
    3847             if len(reva.split('@')) != 2:
    3848                  print errormsg
    3849                  print '  ' + fname + ': flip is given', reva, 'but not axis!'
    3850                  quit(-1)
    3851 
    3852         if rev == 'transpose':
    3853             print '  reversing the axes of the figure (x-->y, y-->x)!!'
    3854             varsv = np.transpose(varsv)
    3855             dxv = dimyv
    3856             dyv = dimxv
    3857             dimxv = dxv
    3858             dimyv = dyv
     3837    # Usually axis > x must be the lon, thus...
     3838    dimxv0 = dimxv.copy()
     3839    dimyv0 = dimyv.copy()
     3840    dimxt0 = np.array(pretty_int(dimxv.min(),dimxv.max(),10))
     3841    dimyt0 = np.array(pretty_int(dimyv.min(),dimyv.max(),10))
     3842    dimxl0 = []
     3843    for i in range(len(dimxt0)): dimxl0.append('{:.1f}'.format(dimxt0[i]))
     3844    dimyl0 = []
     3845    for i in range(len(dimyt0)): dimyl0.append('{:.1f}'.format(dimyt0[i]))
     3846    dimxT0 = variables_values(dimn[0])[0] + ' (' + units_lunits(dimxu) + ')'
     3847    dimyT0 = variables_values(dimn[1])[0] + ' (' + units_lunits(dimyu) + ')'
     3848
     3849    if reva is not None:
     3850        varsv, dimxv, dimyv, dimxt, dimyt, dimxl, dimyl, dimxT, dimyT =              \
     3851          transform(varsv, reva, dxv=dimxv0, dyv=dimyv0, dxt=dimxt0, dyt=dimyt0,     \
     3852          dxl=dimxl0, dyl=dimyl0, dxtit=dimxT0, dytit=dimyT0)
     3853    else:
     3854        dimxv = dimxv0
     3855        dimyv = dimyv0
     3856        dimxt = dimxt0
     3857        dimyt = dimyt0
     3858        dimxl = dimxl0
     3859        dimyl = dimyl0
     3860        dimxT = dimxT0
     3861        dimyT = dimyT0
    38593862
    38603863    if len(dimxv[:].shape) == 3:
     
    40284031        plt.ylabel('S-N')
    40294032    else:
    4030         plt.xlabel(variables_values(dimn[1])[0].replace('_','\_') + ' (' +           \
    4031           units_lunits(dimxu) + ')')
    4032         plt.ylabel(variables_values(dimn[0])[0].replace('_','\_') + ' (' +           \
    4033           units_lunits(dimyu) + ')')
     4033        plt.xlabel(dimxT)
     4034        plt.ylabel(dimyT)
    40344035
    40354036    txpos = pretty_int(x.min(),x.max(),5)
     
    40404041    for i in range(len(tylabels)): tylabels[i] = '{:6g}'.format(tylabels[i])
    40414042
    4042 # set the limits of the plot to the limits of the data
    4043 
    4044     if searchInlist(revas,'transpose'):
    4045         x0 = y
    4046         y0 = x
    4047         x = x0
    4048         y = y0
    4049 #    print 'Lluis reva0:',reva0,'x min,max:',x.min(),x.max(),' y min,max:',y.min(),y.max()
    4050 
    4051     if reva0 == 'flip':
    4052         if reva.split('@')[1] == 'x':
    4053             plt.axis([x.max(), x.min(), y.min(), y.max()])
    4054         elif reva.split('@')[1] == 'y':
    4055             plt.axis([x.min(), x.max(), y.max(), y.min()])
    4056         else:
    4057             plt.axis([x.max(), x.min(), y.max(), y.min()])
    4058     else:
    4059         plt.axis([x.min(), x.max(), y.min(), y.max()])
     4043    plt.axis([x.min(), x.max(), y.min(), y.max()])
    40604044
    40614045    if mapv is None:
Note: See TracChangeset for help on using the changeset viewer.