From: <js...@us...> - 2007-11-24 19:43:39
|
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. |