Revision: 5948
http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5948&view=rev
Author: jswhit
Date: 2008-08-01 17:57:59 +0000 (Fri, 01 Aug 2008)
Log Message:
-----------
change drawlsmask method to accept any valid matplotlib color specification.
Modified Paths:
--------------
trunk/toolkits/basemap/examples/ortho_demo.py
trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py
Added Paths:
-----------
trunk/toolkits/basemap/doc/users/figures/background1.py
trunk/toolkits/basemap/doc/users/figures/background2.py
trunk/toolkits/basemap/doc/users/figures/background3.py
Added: trunk/toolkits/basemap/doc/users/figures/background1.py
===================================================================
--- trunk/toolkits/basemap/doc/users/figures/background1.py
(rev 0)
+++ trunk/toolkits/basemap/doc/users/figures/background1.py 2008-08-01
17:57:59 UTC (rev 5948)
@@ -0,0 +1,15 @@
+from mpl_toolkits.basemap import Basemap
+import matplotlib.pyplot as plt
+# setup Lambert Conformal basemap.
+m = Basemap(width=12000000,height=9000000,projection='lcc',
+ resolution='c',lat_1=45.,lat_2=55,lat_0=50,lon_0=-107.)
+# draw coastlines.
+m.drawcoastlines()
+# draw a boundary around the map, fill the background.
+# this background will end up being the ocean color, since
+# the continents will be drawn on top.
+m.drawmapboundary(fill_color='aqua')
+# fill continents, set lake color same as ocean color.
+m.fillcontinents(color='coral',lake_color='aqua')
+plt.title("Lambert Conformal Projection")
+plt.savefig('background1.png')
Added: trunk/toolkits/basemap/doc/users/figures/background2.py
===================================================================
--- trunk/toolkits/basemap/doc/users/figures/background2.py
(rev 0)
+++ trunk/toolkits/basemap/doc/users/figures/background2.py 2008-08-01
17:57:59 UTC (rev 5948)
@@ -0,0 +1,11 @@
+from mpl_toolkits.basemap import Basemap
+import matplotlib.pyplot as plt
+# setup Lambert Conformal basemap.
+# set resolution=None to skip processing of boundary datasets.
+m = Basemap(width=12000000,height=9000000,projection='lcc',
+ resolution=None,lat_1=45.,lat_2=55,lat_0=50,lon_0=-107.)
+# draw a land-sea mask for a map background.
+# lakes=True means plot inland lakes with ocean color.
+m.drawlsmask('coral','aqua',lakes=True)
+plt.title("Lambert Conformal Projection")
+plt.savefig('background2.png')
Added: trunk/toolkits/basemap/doc/users/figures/background3.py
===================================================================
--- trunk/toolkits/basemap/doc/users/figures/background3.py
(rev 0)
+++ trunk/toolkits/basemap/doc/users/figures/background3.py 2008-08-01
17:57:59 UTC (rev 5948)
@@ -0,0 +1,9 @@
+from mpl_toolkits.basemap import Basemap
+import matplotlib.pyplot as plt
+# setup Lambert Conformal basemap.
+# set resolution=None to skip processing of boundary datasets.
+m = Basemap(width=12000000,height=9000000,projection='lcc',
+ resolution=None,lat_1=45.,lat_2=55,lat_0=50,lon_0=-107.)
+m.bluemarble()
+plt.title("Lambert Conformal Projection")
+plt.savefig('background3.png')
Modified: trunk/toolkits/basemap/examples/ortho_demo.py
===================================================================
--- trunk/toolkits/basemap/examples/ortho_demo.py 2008-08-01 17:10:38 UTC
(rev 5947)
+++ trunk/toolkits/basemap/examples/ortho_demo.py 2008-08-01 17:57:59 UTC
(rev 5948)
@@ -13,7 +13,7 @@
rgba_land = (0,255,0,255) # land green.
rgba_ocean = (0,0,255,255) # ocean blue.
# lakes=True means plot inland lakes with ocean color.
-m.drawlsmask(rgba_land, rgba_ocean, lakes=True)
+m.drawlsmask('red','blue', lakes=True)
# draw parallels and meridians.
m.drawparallels(np.arange(-90.,120.,30.))
m.drawmeridians(np.arange(0.,420.,60.))
@@ -32,9 +32,9 @@
m.drawmapboundary(fill_color='aqua')
# add a map scale.
length = 5000
-x1,y1 = 0.2*m.xmax, 0.2*m.ymax
+x1,y1 = 0.3*m.xmax, 0.25*m.ymax
lon1,lat1 = m(x1,y1,inverse=True)
-m.drawmapscale(lon1,lat1,lon_0,lat_0,length,fontsize=8,barstyle='fancy',\
+m.drawmapscale(lon1,lat1,lon1,lat1,length,fontsize=8,barstyle='fancy',\
labelstyle='fancy',units='km')
plt.title('Orthographic Map Centered on Lon=%s, Lat=%s' % (lon_0,lat_0))
plt.show()
Modified: trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py
===================================================================
--- trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py 2008-08-01
17:10:38 UTC (rev 5947)
+++ trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py 2008-08-01
17:57:59 UTC (rev 5948)
@@ -2940,7 +2940,7 @@
self.set_axes_limits(ax=ax)
return retnh,retsh
- def drawlsmask(self,rgba_land,rgba_ocean,lsmask=None,
+ def drawlsmask(self,land_color,ocean_color,lsmask=None,
lsmask_lons=None,lsmask_lats=None,lakes=False,**kwargs):
"""
Draw land-sea mask image.
@@ -2955,15 +2955,8 @@
============== ====================================================
Arguments Description
============== ====================================================
- rgba_land rgba integer tuple that describes desired
- land color. For example, for green (non-transparent)
- land areas, use rgba_land = (0,255,0,255).
- rgba_ocean rgba integer tuple that describes desired
- ocean color. For example, for blue (non-transparent)
- ocean areas, use (0,0,255,255). To make transparent
- blue oceans (useful if you just want to mask land
- regions over another image), use
- rgba_ocean = (0,0,255,0).
+ land_color desired land color (color name or rgba tuple).
+ rgba_ocean desired ocean color (color name or rgba tuple).
============== ====================================================
.. tabularcolumns:: |l|L|
@@ -2995,6 +2988,22 @@
Extra keyword ``ax`` can be used to override the default axis instance.
"""
+ # convert land and ocean colors to integer rgba tuples with
+ # values between 0 and 255.
+ from matplotlib.colors import ColorConverter
+ c = ColorConverter()
+ # if conversion fails, assume it's because the color
+ # given is already an rgba tuple with values between 0 and 255.
+ try:
+ cl = c.to_rgba(land_color)
+ rgba_land = tuple([int(255*x) for x in cl])
+ except:
+ rgba_land = land_color
+ try:
+ co = c.to_rgba(ocean_color)
+ rgba_ocean = tuple([int(255*x) for x in co])
+ except:
+ rgba_ocean = ocean_color
# look for axes instance (as keyword, an instance variable
# or from plt.gca().
if not kwargs.has_key('ax') and self.ax is None:
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins