Revision: 4431
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4431&view=rev
Author:   jswhit
Date:     2007-11-24 11:43:37 -0800 (Sat, 24 Nov 2007)

Log Message:
-----------
modify pupynere to create masked array when missing_value
and/or _FillValue attribute is defined, and apply scale_factor
and add_offset.

Modified Paths:
--------------
    trunk/toolkits/basemap/lib/matplotlib/toolkits/basemap/pupynere.py

Modified: trunk/toolkits/basemap/lib/matplotlib/toolkits/basemap/pupynere.py
===================================================================
--- trunk/toolkits/basemap/lib/matplotlib/toolkits/basemap/pupynere.py  
2007-11-24 13:25:06 UTC (rev 4430)
+++ trunk/toolkits/basemap/lib/matplotlib/toolkits/basemap/pupynere.py  
2007-11-24 19:43:37 UTC (rev 4431)
@@ -31,7 +31,7 @@
 import itertools
 import mmap
 
-from numpy import ndarray, zeros, array
+from numpy import ndarray, zeros, array, ma, squeeze
 
 
 ABSENT       = '\x00' * 8
@@ -257,7 +257,23 @@
                                    }
 
     def __getitem__(self, index):
-        return self.__array_data__.__getitem__(index)
+        # modified by jsw to automatically
+        # - remove singleton dimensions
+        # - create a masked array using missing_value or _FillValue attribute
+        # - apply scale_factor and add_offset to packed integer data
+        datout = squeeze(self.__array_data__.__getitem__(index))
+        try:
+            datout = ma.masked_values(datout, self.missing_value)
+        except:
+            try:
+                datout = ma.masked_values(datout, self._FillValue)
+            except:
+                pass
+        try:
+            datout = self.scale_factor*datout + self.add_offset
+        except:
+            pass
+        return datout
 
     def getValue(self):
         """For scalars."""


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: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to