Revision: 4535
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4535&view=rev
Author:   jswhit
Date:     2007-12-01 05:59:01 -0800 (Sat, 01 Dec 2007)

Log Message:
-----------
update basemap examples for version 0.9.8

Modified Paths:
--------------
    trunk/py4science/examples/basemap1.py
    trunk/py4science/examples/basemap2.py
    trunk/py4science/examples/basemap3.py
    trunk/py4science/examples/basemap4.py
    trunk/py4science/examples/basemap5.py
    trunk/py4science/examples/skel/basemap1_skel.py
    trunk/py4science/examples/skel/basemap2_skel.py
    trunk/py4science/examples/skel/basemap3_skel.py
    trunk/py4science/examples/skel/basemap4_skel.py
    trunk/py4science/examples/skel/basemap5_skel.py
    trunk/py4science/workbook/basemap.tex

Modified: trunk/py4science/examples/basemap1.py
===================================================================
--- trunk/py4science/examples/basemap1.py       2007-11-30 20:06:59 UTC (rev 
4534)
+++ trunk/py4science/examples/basemap1.py       2007-12-01 13:59:01 UTC (rev 
4535)
@@ -2,9 +2,7 @@
 from matplotlib.toolkits.basemap import Basemap
 
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying lat/lon values at corners.
 resolution = 'l'
 projection = 'lcc'
@@ -18,8 +16,10 @@
             resolution=resolution,projection=projection)
 # draw coastlines. Make liness a little thinner than default.
 m.drawcoastlines(linewidth=0.5)
-# fill continents.
-m.fillcontinents(color='coral')
+# background fill color will show ocean areas.
+m.drawmapboundary(fill_color='aqua')
+# fill continents, lakes within continents.
+m.fillcontinents(color='coral',lake_color='aqua')
 # draw states and countries.
 m.drawcountries()
 m.drawstates()

Modified: trunk/py4science/examples/basemap2.py
===================================================================
--- trunk/py4science/examples/basemap2.py       2007-11-30 20:06:59 UTC (rev 
4534)
+++ trunk/py4science/examples/basemap2.py       2007-12-01 13:59:01 UTC (rev 
4535)
@@ -2,9 +2,7 @@
 from matplotlib.toolkits.basemap import Basemap
 
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying width and height in km.
 resolution = 'l'
 projection = 'lcc'
@@ -15,11 +13,9 @@
 m = Basemap(lon_0=lon_0,lat_0=lat_0,\
             width=width,height=height,\
             resolution=resolution,projection=projection)
-# draw coastlines.
 m.drawcoastlines(linewidth=0.5)
-# fill continents.
-m.fillcontinents(color='coral')
-# draw states and countries.
+m.drawmapboundary(fill_color='aqua')
+m.fillcontinents(color='coral',lake_color='aqua')
 m.drawcountries()
 m.drawstates()
 pylab.title('map region specified using width and height')

Modified: trunk/py4science/examples/basemap3.py
===================================================================
--- trunk/py4science/examples/basemap3.py       2007-11-30 20:06:59 UTC (rev 
4534)
+++ trunk/py4science/examples/basemap3.py       2007-12-01 13:59:01 UTC (rev 
4535)
@@ -2,9 +2,7 @@
 from matplotlib.toolkits.basemap import Basemap
 
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying width and height in km.
 resolution = 'l'
 lon_0 = -50
@@ -37,7 +35,8 @@
 pylab.text(lon_x-100000,lon_y+100000,'London',fontsize=12,\
            color='k',horizontalalignment='right',fontweight='bold')
 m.drawcoastlines(linewidth=0.5)
-m.fillcontinents(color='coral')
+m.drawmapboundary(fill_color='aqua')
+m.fillcontinents(color='coral',lake_color='aqua')
 m.drawcountries()
 m.drawstates()
 pylab.title('NY to London Great Circle')

Modified: trunk/py4science/examples/basemap4.py
===================================================================
--- trunk/py4science/examples/basemap4.py       2007-11-30 20:06:59 UTC (rev 
4534)
+++ trunk/py4science/examples/basemap4.py       2007-12-01 13:59:01 UTC (rev 
4535)
@@ -1,9 +1,7 @@
 import pylab, numpy
 from matplotlib.toolkits.basemap import Basemap
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying width and height in km.
 resolution = 'l'
 lon_0 = -50
@@ -15,7 +13,8 @@
             width=width,height=height,\
             resolution=resolution,projection=projection)
 m.drawcoastlines(linewidth=0.5)
-m.fillcontinents(color='coral')
+m.drawmapboundary(fill_color='aqua')
+m.fillcontinents(color='coral',lake_color='aqua')
 m.drawcountries()
 m.drawstates()
 # label meridians where they intersect the left, right and bottom

Modified: trunk/py4science/examples/basemap5.py
===================================================================
--- trunk/py4science/examples/basemap5.py       2007-11-30 20:06:59 UTC (rev 
4534)
+++ trunk/py4science/examples/basemap5.py       2007-12-01 13:59:01 UTC (rev 
4535)
@@ -1,28 +1,22 @@
 from matplotlib.toolkits.basemap import Basemap, NetCDFFile
 import pylab, numpy
-from numpy import ma
 
 # read in netCDF sea-surface temperature data
+# can be a local file, a URL for a remote opendap dataset,
+# or (if PyNIO is installed) a GRIB or HDF file.
 ncfile = NetCDFFile('data/sst.nc')
-sstv = ncfile.variables['analysed_sst']
-sst = ma.masked_values(numpy.squeeze(sstv[:]), sstv._FillValue)
-sst = sstv.scale_factor*sst + sstv.add_offset
+sst = ncfile.variables['analysed_sst'][:]
 lats = ncfile.variables['lat'][:]
 lons = ncfile.variables['lon'][:]
+
 print sst.shape, sst.min(), sst.max()
 
-# make sure middle of map region is middle of data grid.
-lon_0 = lons.mean()
-lat_0 = lats.mean()
 # set colormap
 cmap = pylab.cm.gist_ncar
-# set so masked values in an image will be black
-# (i.e. continents will be painted this color)
-cmap.set_bad('k')
 # create Basemap instance for mollweide projection.
 # coastlines not used, so resolution set to None to skip
 # continent processing (this speeds things up a bit)
-m = Basemap(projection='moll',lon_0=lon_0,lat_0=lat_0,resolution=None)
+m = Basemap(projection='moll',lon_0=0,lat_0=0,resolution=None)
 # compute map projection coordinates of grid.
 x, y = m(*numpy.meshgrid(lons, lats))
 # plot with pcolor
@@ -31,8 +25,9 @@
 m.drawparallels(numpy.arange(-90.,120.,30.))
 m.drawmeridians(numpy.arange(0.,420.,60.))
 # draw line around map projection limb.
-m.drawmapboundary()
+# color map region background black (missing values will be this color)
+m.drawmapboundary(fill_color='k')
 # draw horizontal colorbar.
 pylab.colorbar(orientation='horizontal')
-pylab.savefig('basemap5.pdf') # eps files are too huge when pcolor used.
+pylab.savefig('basemap5.pdf')
 pylab.savefig('basemap5.png')

Modified: trunk/py4science/examples/skel/basemap1_skel.py
===================================================================
--- trunk/py4science/examples/skel/basemap1_skel.py     2007-11-30 20:06:59 UTC 
(rev 4534)
+++ trunk/py4science/examples/skel/basemap1_skel.py     2007-12-01 13:59:01 UTC 
(rev 4535)
@@ -2,9 +2,7 @@
 from matplotlib.toolkits.basemap import Basemap
 
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying lat/lon values at corners.
 projection = 'lcc' # map projection 
 resolution = XX # resolution of boundaries ('c','l','i',or 'h')
@@ -18,8 +16,10 @@
             resolution=resolution,projection=projection)
 # draw coastlines. Make liness a little thinner than default.
 m.drawcoastlines(linewidth=0.5)
-# fill continents.
-m.fillcontinents(color='coral')
+# background fill color will show ocean areas.
+m.drawmapboundary(fill_color='aqua')
+# fill continents, lakes within continents.
+m.fillcontinents(color='coral',lake_color='aqua')
 # draw states and countries.
 m.drawcountries()
 m.drawstates()

Modified: trunk/py4science/examples/skel/basemap2_skel.py
===================================================================
--- trunk/py4science/examples/skel/basemap2_skel.py     2007-11-30 20:06:59 UTC 
(rev 4534)
+++ trunk/py4science/examples/skel/basemap2_skel.py     2007-12-01 13:59:01 UTC 
(rev 4535)
@@ -2,9 +2,7 @@
 from matplotlib.toolkits.basemap import Basemap, supported_projections
 
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying width and height in km.
 projection = XX # map projection  ('lcc','stere','laea','aea' etc)
                 # 'print supported_projections' gives a list
@@ -16,11 +14,9 @@
 m = Basemap(lon_0=lon_0,lat_0=lat_0,\
             width=width,height=height,\
             resolution=resolution,projection=projection)
-# draw coastlines.
 m.drawcoastlines(linewidth=0.5)
-# fill continents.
-m.fillcontinents(color='coral')
-# draw states and countries.
+m.drawmapboundary(fill_color='aqua')
+m.fillcontinents(color='coral',lake_color='aqua')
 m.drawcountries()
 m.drawstates()
 pylab.title('map region specified using width and height')

Modified: trunk/py4science/examples/skel/basemap3_skel.py
===================================================================
--- trunk/py4science/examples/skel/basemap3_skel.py     2007-11-30 20:06:59 UTC 
(rev 4534)
+++ trunk/py4science/examples/skel/basemap3_skel.py     2007-12-01 13:59:01 UTC 
(rev 4535)
@@ -4,7 +4,6 @@
 # create figure.
 # background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying width and height in km.
 resolution = 'l'
 lon_0 = -50
@@ -39,7 +38,8 @@
 pylab.text(x2-100000,y2+100000,name2,fontsize=12,\
            color='k',horizontalalignment='right',fontweight='bold')
 m.drawcoastlines(linewidth=0.5)
-m.fillcontinents(color='coral')
+m.drawmapboundary(fill_color='aqua')
+m.fillcontinents(color='coral',lake_color='aqua')
 m.drawcountries()
 m.drawstates()
 pylab.title(name1+' to '+name2+' Great Circle')

Modified: trunk/py4science/examples/skel/basemap4_skel.py
===================================================================
--- trunk/py4science/examples/skel/basemap4_skel.py     2007-11-30 20:06:59 UTC 
(rev 4534)
+++ trunk/py4science/examples/skel/basemap4_skel.py     2007-12-01 13:59:01 UTC 
(rev 4535)
@@ -1,9 +1,7 @@
 import pylab, numpy
 from matplotlib.toolkits.basemap import Basemap
 # create figure.
-# background color will be used for 'wet' areas.
 fig = pylab.figure()
-fig.add_axes([0.1,0.1,0.8,0.8],axisbg='aqua')
 # create map by specifying width and height in km.
 resolution = 'l'
 lon_0 = -50
@@ -15,7 +13,8 @@
             width=width,height=height,\
             resolution=resolution,projection=projection)
 m.drawcoastlines(linewidth=0.5)
-m.fillcontinents(color='coral')
+m.drawmapboundary(fill_color='aqua')
+m.fillcontinents(color='coral',lake_color='aqua')
 m.drawcountries()
 m.drawstates()
 # draw and label parallels.

Modified: trunk/py4science/examples/skel/basemap5_skel.py
===================================================================
--- trunk/py4science/examples/skel/basemap5_skel.py     2007-11-30 20:06:59 UTC 
(rev 4534)
+++ trunk/py4science/examples/skel/basemap5_skel.py     2007-12-01 13:59:01 UTC 
(rev 4535)
@@ -1,33 +1,24 @@
 from matplotlib.toolkits.basemap import Basemap, NetCDFFile, cm
 import pylab, numpy
-from numpy import ma
 
 # read in netCDF sea-surface temperature data
+# can be a local file, a URL for a remote opendap dataset,
+# or (if PyNIO is installed) a GRIB or HDF file.
 ncfile = NetCDFFile('data/sst.nc')
-sstv = ncfile.variables['analysed_sst']
-sst = ma.masked_values(numpy.squeeze(sstv[:]), sstv._FillValue)
-sst = sstv.scale_factor*sst + sstv.add_offset
+sst = ncfile.variables['analysed_sst'][:]
 lats = ncfile.variables['lat'][:]
 lons = ncfile.variables['lon'][:]
+
 print sst.shape, sst.min(), sst.max()
 
-# make sure middle of map region is middle of data grid.
-lon_0 = lons.mean()
-lat_0 = lats.mean()
-# set colormap
-#cmap = pylab.cm.gist_ncar
 # Basemap comes with extra colormaps from Generic Mapping Tools
 # (imported as cm, pylab colormaps in pylab.cm)
 cmap = XX
-# set so masked values in an image will be painted specified color
-# (i.e. continents will be painted this color)
-color = XX
-cmap.set_bad(color)
 # create Basemap instance for mollweide projection.
 projection = XX # try moll, robin, sinu or ortho.
 # coastlines not used, so resolution set to None to skip
 # continent processing (this speeds things up a bit)
-m = Basemap(projection=projection,lon_0=lon_0,lat_0=lat_0,resolution=None)
+m = Basemap(projection=projection,lon_0=0,lat_0=0,resolution=None)
 # compute map projection coordinates of grid.
 x, y = m(*numpy.meshgrid(lons, lats))
 # plot with pcolor
@@ -36,7 +27,9 @@
 m.drawparallels(numpy.arange(-90.,120.,30.))
 m.drawmeridians(numpy.arange(0.,420.,60.))
 # draw line around map projection limb.
-m.drawmapboundary()
+# color map region background (missing values will be this color)
+color = XX
+m.drawmapboundary(fill_color=color)
 # draw horizontal colorbar.
 pylab.colorbar(orientation='horizontal')
 pylab.show()

Modified: trunk/py4science/workbook/basemap.tex
===================================================================
--- trunk/py4science/workbook/basemap.tex       2007-11-30 20:06:59 UTC (rev 
4534)
+++ trunk/py4science/workbook/basemap.tex       2007-12-01 13:59:01 UTC (rev 
4535)
@@ -96,10 +96,16 @@
 One of the most common uses of Basemap is to visualize earth science
 data, such as output from climate models. These data often come on
 latitude/longitude grids. One common data format for storing such
-grids is NetCDF. Basemap includes a NetCDF file reader (written in
-pure python by Roberto D'Almeida). There are python packages available
-for reading just about every other scientific data format imaginable,
-including HDF, GRIB, FITS and many others. Following is an example
+grids is NetCDF.  Basemap includes a NetCDF file reader (written in
+pure python by Roberto D'Almeida). 
+You can also access remote datasets over the web using the OPeNDAP
+protocol - just give the NetCDFFile function a URL instead of a local file name
+and Roberto's pydap module (\texttt{http://pydap.org}) will be used.
+The pydap client is included in Basemap.
+If the PyNIO module (\texttt{http://www.pyngl.ucar.edu/Nio.shtml}) is 
installed, the 
+NetCDFFile function can also be used to open the formats that 
+PyNIO supports, like GRIB and HDF.
+Following is an example
 of how to read sea-surface temperature data from a NetCDF file and
 plot it on a global mollweide projection.
 


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

-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell.  From the desktop to the data center, Linux is going
mainstream.  Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to