Evan Mason wrote:
> Hi, I am having some problems using the oblique mercator projection in 
> basemap.  I want to define a rectangular orthogonal grid, rotated 
> clockwise by about 13 degrees.  I want to define grid cells of size, 
> say, about 20x20 km.  The script I have so far is below.  The problem 
> is that at some point (the makegrid step) I lose the rotation, as seen 
> in the plot.
>
> I'd appreciate any help with this, thanks, Evan
>
>
> from matplotlib.toolkits.basemap import Basemap
>
> M = Basemap(projection = 'omerc',           \
>                resolution  = None,                   \
>            llcrnrlon  = -43.7,   \
>            llcrnrlat   = 14.7,    \
>            urcrnrlon = -4.0,    \
>            urcrnrlat  = 41.9,    \
>            lat_2       = 11.0,    \
>            lat_1       = 45.5,    \
>            lon_2      = -27.8,   \
>            lon_1      = -19.9)
>
> dl = 20000.
> nx = int((M.xmax - M.xmin) / dl) + 1
> ny = int((M.ymax - M.ymin) / dl) + 1
>
> lonr, latr = M.makegrid(nx, ny)
>
> plot(lonr, latr, 'c.')
> show()

Evan:  I have to admit, I'm not too familiar with the Oblique Mercator 
projection.  What exactly should it look like?

If I plot

M = Basemap(projection = 'omerc',           \
               resolution  = 'l',                   \
           llcrnrlon  = -43.7,   \
           llcrnrlat   = 14.7,    \
           urcrnrlon = -4.0,    \
           urcrnrlat  = 41.9,    \
           lat_2       = 11.0,    \
           lat_1       = 45.5,    \
           lon_2      = -27.8,   \
           lon_1      = -19.9)
M.drawcoastlines()
M.drawparallels(arange(10,51,10))
M.drawmeridians(arange(-50,1,10))
M.show()

I see a reasonable looking map, but then I don't really know exactly 
what to expect.

It seems that there are two ways to specify oblique mercator in proj4

1) by specifying 2 points (lon1,lat1), (lon2,lat2) along the central line
2) by specifying a central point and an azimuth that passes through the 
central point.

Basemap uses (1), but every example on the web I've seen uses (2).  It 
could be there are bugs in (1), and (2) would produce more reasonable 
results in your case.  If you can give me an example of what your map 
*should* look like,  it would help a lot.

-Jeff




-- 
Jeffrey S. Whitaker         Phone : (303)497-6313
NOAA/OAR/CDC  R/PSD1        FAX   : (303)497-6449
325 Broadway                Boulder, CO, USA 80305-3328


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to