Revision: 8683
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8683&view=rev
Author:   jswhit
Date:     2010-09-07 17:49:56 +0000 (Tue, 07 Sep 2010)

Log Message:
-----------
add removeparallels and removemeridians convenience methods.

Modified Paths:
--------------
    trunk/toolkits/basemap/Changelog
    trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py

Modified: trunk/toolkits/basemap/Changelog
===================================================================
--- trunk/toolkits/basemap/Changelog    2010-09-06 01:51:58 UTC (rev 8682)
+++ trunk/toolkits/basemap/Changelog    2010-09-07 17:49:56 UTC (rev 8683)
@@ -1,6 +1,7 @@
 version 1.0.1 (not yet released).
            * add datum grid shift files, so that pyproj.transform can do datum
              shifts.
+           * add removeparallels and removemeridians convenience methods.
 version 1.0   (svn revision 8531)
           * don't force adjustable='box' so Basemap is compatible
              with AxesGrid. Added fcstmaps_axesgrid.py example.

Modified: trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py
===================================================================
--- trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py 2010-09-06 
01:51:58 UTC (rev 8682)
+++ trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py 2010-09-07 
17:49:56 UTC (rev 8683)
@@ -2017,6 +2017,29 @@
             if v == ([], []): del linecolls[k]
         return linecolls
 
+    def removeparallels(self,pdict,lat=None):
+        """
+        Given a dictionary returned by ``drawparallels``, remove parallels
+        (latitude lines) and associated labels from the map.
+
+        .. tabularcolumns:: |l|L|
+
+        ==============   ====================================================
+        Keyword          Description
+        ==============   ====================================================
+        lat              latitude value to remove (Default None, removes all 
+                         of them)
+        ==============   ====================================================
+        """
+        if lat is not None and lat not in pdict.keys():
+            raise ValueError('latitude %s not drawn' % lat)
+        for key in pdict.keys():
+            if lat is None or key == lat:
+                tup = pdict[key]
+                for item in tup:
+                    for x in item:
+                        x.remove()
+
     def drawmeridians(self,meridians,color='k',linewidth=1., zorder=None,\
                       dashes=[1,1],labels=[0,0,0,0],labelstyle=None,\
                       fmt='%g',xoffset=None,yoffset=None,ax=None,latmax=None,
@@ -2260,6 +2283,24 @@
             if v == ([], []): del linecolls[k]
         return linecolls
 
+    def removemeridians(self,mdict,lon=None):
+        """
+        Given a dictionary returned by ``drawmeridians``, remove meridians
+        (longitude lines) and associated labels from the map.
+
+        .. tabularcolumns:: |l|L|
+
+        ==============   ====================================================
+        Keyword          Description
+        ==============   ====================================================
+        lon              longitude value to remove (Default None, removes all 
+                         of them)
+        ==============   ====================================================
+        """
+        if lon is not None and lon not in mdict.keys():
+            raise ValueError('longitude %s not drawn' % lon)
+        self.removeparallels(mdict,lat=lon)
+
     def tissot(self,lon_0,lat_0,radius_deg,npts,ax=None,**kwargs):
         """
         Draw a polygon centered at ``lon_0,lat_0``.  The polygon


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Matplotlib-checkins mailing list
Matplotlib-checkins@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to