source: qesdi/geoplot/trunk/lib/geoplot/tests/create_lat_lon_grid_var.py @ 5710

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/qesdi/geoplot/trunk/lib/geoplot/tests/create_lat_lon_grid_var.py@5710
Revision 5710, 2.1 KB checked in by pnorton, 11 years ago (diff)

Cleaned up a the import statements for the geoplot modules, also fixed a couple of the tests.

Line 
1from cdms_utils.cdms_compat import N, cdms
2from geoplot.mpl_imports import basemap
3
4from geoplot.plot_lat_lon import PlotLatLon
5
6Basemap = basemap.Basemap
7
8
9falseOrigin = (-400000, 100000)
10trueOrigin = (358.0, 49.0)
11
12bm_national = Basemap(projection='tmerc',
13                 lon_0=trueOrigin[0],
14                 lat_0=trueOrigin[1],
15                 llcrnrlon=-15.0,
16                 llcrnrlat=45.0,
17                 urcrnrlon=9.0,
18                 urcrnrlat=60.0,
19                 resolution='c',
20                 suppress_ticks=False)
21
22def createLatLonVar(boxSize=0.5, 
23                          reverseLon=False, 
24                          reverseLat=False,
25                          varId='var'
26                          ):
27
28    x = N.arange(-10.0, 3.0 + boxSize, boxSize)
29    y = N.arange(49.0, 60.0 + boxSize, boxSize)
30
31    #reversed axis
32    if reverseLon == True:
33        x = x[::-1]
34   
35    if reverseLat == True:
36        y = y[::-1]
37
38    axisX = cdms.createAxis(x)
39    axisX.id = 'longitude'
40    axisX.axis = 'X'
41   
42    axisY = cdms.createAxis(y)
43    axisY.id = 'latitude'
44    axisY.axes = 'Y'
45   
46    a = N.array(range(len(axisX) * len(axisY)), dtype=N.float64)
47    a.resize((len(axisY), len(axisX)))
48   
49    if reverseLon == True:
50        for j in range(len(y)):
51            row =  N.array(a[j,::-1])
52            a[j,:] = row
53           
54    if reverseLat == True:
55        for i in range(len(x)):
56            col = N.array(a[::-1, i])
57            a[:,i] = col
58   
59    var = cdms.createVariable(a, id=varId, axes=[axisY, axisX])
60   
61    return var
62
63if __name__ == '__main__':
64   
65    import geoplot.log_util
66    geoplot.log_util.setGeoplotHandlerToStdOut()
67   
68    var = createLatLonVar(boxSize=1, 
69                        reverseLon=True,
70                        reverseLat=True,
71                                )
72   
73    plot = PlotLatLon(var, 
74                            xLimits=(-11.0, 4.0), 
75                            yLimits=(48.0, 61.0),
76                            valueFormat="%i",
77                            showGridLines=True,
78                            drawValues=True,
79                            )
80    plot.drawMap("out.png")
Note: See TracBrowser for help on using the repository browser.