File: Changelog

package info (click to toggle)
basemap 1.2.0+dfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 212,272 kB
  • sloc: python: 9,541; ansic: 266; makefile: 39; sh: 23
file content (685 lines) | stat: -rw-r--r-- 39,190 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
version 1.2.0
-------------
* Mostly compatibility bugfixes

version 1.1.0 (git tag v1.1.0rel)
--------------------------------
* Updated packaged data to use GSHHG v2.3.6 (PR #311 & #320)
* pyshp/pyproj are now external dependencies (PR #234)
* Proper clipping of plots regardless of projection (issue #175)
* drawmapscale() supports "feet" as an input unit (PR #289)
* nightshade() supports datetime timezone-aware datetime objects
  as long as the timezone is UTC. Still assumes timezone-naive
  objects are UTC as well. (issue #272)
* Properly perform input validation/casting (issue #260)
* Support newer versions of OWSLib (PR #259)
* Use integer indexes (PR #246)
* Stop ResourceWarnings for unclosed files in py3k (PR #244)
* add 'textcolor' kwarg to drawmeridians and drawparallels (issue #145).
* don't assume grid is regular when adding cyclic point in addcyclic. 
  New kwargs 'axis' and 'cyclic' added.  More than one array
  can be handled at a time, as long as the last one is longitude. (issue #139).
* fix for coastline drawing glitch (issue #123).
* added 'facecolor' keyward argument to drawcounties() method; gives user
  ability to fill counties with specified matplotlib color argument.
* fix drawgreatcircle bug so that lines exiting and reentering a projection
  region don't draw horizontally across the map. 
* on non-windows platforms, only link against libgeos C API (and not against
  C++ API anymore; issue #140). This is recommended by the authors/maintainers
  of GEOS.  Also, this means that on e.g. Debian Linux, basemap can now be
  installed from source simply using 'pip install basemap' when the libgeos
  packages are installed globally using the package management.

version 1.0.7 (git tag v1.0.7rel)
---------------------------------
* include mpl_toolkits/__init__.py, since the one installed by matplotlib
  is now inaccessible inside an egg (in 1.4.x).  Make basemap a 'namespace
  package'.  Issue 114.
* fix drawmeridians so meridians reach edge of plot when map projection region
  is *very* small (issue 113).
* update pyproj (with fixes to geodesic calculations).
* support for rotated pole transformation (projection = 'rotpole').
* fix warpimage with projection = 'hammer' (issue 100).
* fix tolerances for detecting jumps in meridians and parallels for
  cyl and rotpole projections (issue 108).
* fix clipping to map projection region done in contourf and contour methods
  so it doesn't assume x and y are increasing (issue 110).

version 1.0.6 (git tag v1.0.6rel)
--------------------------------
* fix drawcounties for Python 3.3.
* update pyproj to version 1.9.3 (remove geographiclib python code, replace
  with C code from proj4).
* in contourf and contour, all points outside the map projection
  region were masked. This meant that if a grid cell was partly inside and partly
  outside the map projection region, nothing was drawn, leaving a gap along the
  edge of the map. This was particularly noticeable for very coarse resolution grids.
  This commit only masks those points more than one grid length beyond the edge
  of the map projection region.  Fixes issue 88.
* allow for latitude values slightly greater than 90 to exist in shapefiles,
  (by truncating to 90).  Still raise exception if latitude exceeds 90.01.
* added 'wmsimage' method for displaying background image retrieved from
  a OGC-compliant WMS server using OWSLib (http://pypi.python.org/OWSLib)
  (requires using 'epsg' keyword to define projection).
* fix drawing of meridians and parallels for very small map regions
  (issue 79).
* add module variable 'latlon_default' that can be used to switch
  default value of latlon kwarg to True so plotting methods can be
  passed lats and lons (geographic coordinatsin degrees) instead
  of x,y (projection coordinates).
* have drawcoastlines use line segments instead of coastline polygons, to
  avoid 'thickening' of lines around edges of map.
* added support for cylindrical equal area ('cea') projection.
* add 'arcgisimage' method for displaying background image retrieved from
  an ArcGIS server using the REST API
  (requires using 'epsg' keyword to define projection).
* add 'epsg' keyword for defining projections.
* add 'ellps' keyword (rsphere ignored if ellps given).
* fixed shiftdata method so it shifts mask along with data
  (https://github.com/matplotlib/basemap/pull/68).
* added linestyle keyword to all draw* methods.
* added 'drawcounties' method (https://github.com/matplotlib/basemap/pull/65)
  thanks to Patrick Marsh.
* fix bug that caused plotting to fail when latlon keyword is
  explicitly set to False (https://github.com/matplotlib/basemap/pull/66).
* add latlon keyword to plot and scatter methods
  (https://github.com/matplotlib/basemap/pull/64).

version 1.0.5 (git tag v1.0.5rel)
---------------------------------
* fix bug triggered when drawlsmask method called more than once.
* fix error in contour method that caused a bogus mask to be applied
  to the data (issue 58).
* fix further corner cases with splitting of parallels that cross
  the dateline (issue 40).
* add latlon keyword to plotting methods.  If latlon=True, x and y
  values are assumed to longitudes and latitudes in degrees.  The
  data and longitudes are shifted to the map projection region (for
  cylindrical and pseudo-cylindrical projections) using the shiftdata
  method, and lons/lats are converted to map projection coords. Default
  value is False. Addresses issue 54.  New example shiftdata.py added
  to illustrate usage.
* fix bluemarble and warpimage methods to account for change in orientation
  of arrays returned to matplotlib's pil_to_array (issue 51)
* fix glitch with drawing meridians and filling coastline polygons with
  omerc projection that includes pole.

version 1.0.4 (git tag v1.0.4rel)
--------------------------------
* fix bug that caused Europe coastlines to disappear from some maps
  (evident from nytolondon.py example).
* fix splitting of parallels in conic projections that cross the dateline
  (issue 40).

version 1.0.3 (git tag v1.0.3rel)
------------------------------
* fix some more python 3 compatibility issues (all examples now
  work with python 3.2).
* added alpha keyword to fillcontinents (to set transparency).
* update geos from 3.3.1 to 3.3.3.
* upgrade proj4 source to version 4.8.0, pyproj to version 1.9.2.
* add k_0 keyword for projection = 'tmerc' so UTM zones can be
  created. Also can be used with 'lcc','omerc' and 'stere'.
  Added "utmtest.py" example.
* add streamplot method, along with streamplot_demo.py example.
* add boundarylats, boundarylons Basemap attributes (arrays
  describing map boundaries - useful for illustrating map projection
  region on another map). Example illustrating usage
  (make_inset.py) added.
* update coastlines, rivers, political boundaries to GSHHS
  2.2.0/GMT 4.5.7. The fillcontinents bug (filling the outside
  instead of the inside of a coastline polygon) is now much
  harder to trigger.
* add 'round' keyword keyword to Basemap.__init__ for pole-centered
  projections to make them round (clipped at boundinglat) instead
  of square.
* added hexbin method, along with hexbin_demo.py example.
* drawmapboundary now uses axes bgcolor as default fill_color. If
  no color fill wanted, set fill_color='none' (a string).
* clip coastlines for nplaea,npaeqd,splaea,spaeqd in stereographic
  coordinates to avoid S. America disappearing in some south polar
  plots.
* fix broken daynight terminator function.
* added kav7 (Kavrayskiy VII) and eck4 (Eckert IV) projections
  (https://github.com/matplotlib/basemap/issues/9).
* update pyproj source from pyproj.googlecode.com. Includes
  new more robust and accurate pure python code for geodesic computations
  from geographiclib.
* bug fixes for celestial projections, and non-standard sphere
  radii (https://github.com/matplotlib/basemap/pull/6).
* fix bug in drawparallels that results in 'KeyError' when drawing
  parallels very close together (0.1 degrees).
* fix constant in Robinson projection (update PJ_robin.c
  from proj4 svn).
* fix typo in setup.py (replace "!= ['sdist','clean']" with
  "not in ['sdist','clean']").
* make sure drawmeridians can handle wrap-around (so that
  if projection is defined in -180 to 0 and user asks for
  meridians from 180 to 360 to be drawn, it should work).
  Only affects projections 'mill','gall','merc' and 'cyl'.

version 1.0.2 (git tag v1.0.2)
           * update include geos from 3.2.0 to 3.3.1 so it compiles with gcc
             4.6.
           * added colorbar method that uses axes_grid toolkit to
             create colorbar axes.
           * replace hasattr(arr,'mask') with numpy.ma.isMA(arr).
           * docs updated, moved to matplotlib.github.com/basemap.
           * added optional 1.25, 2.5 and 10 minute land/sea masks (derived from
             GSHHS coastline data). 'resolution'
             and 'grid' kwargs added to drawlsmask and maskoceans.
             'resolution' can be 'c','l','i','h' or 'f', grid can be 1.25,2.5,5 or 10.
           * update shapefile.py from pyshp.googlecode.com to r72.
           * change default land-sea mask (now derived directly from gshhs
             coastline data, default is 5 minutes use coastline resolution =
             'l'). Default for plotting lakes is now True.
           * add etopo method (similar to bluemarble, but plots etopo
             relief image from www.ngdc.noaa.gov/mgg/global as a map background).
           * add shadedrelief method (similar to bluemarble, but plots shaded
             relief image from naturalearthdata.com as a map background).
           * replace pyshapelib with pure python shapelib.py from
             pyshp.googlecode.com.  Allows full python 3 compatibility.
           * fix doc/conf.py to use inheritance_diagram from Sphinx, not
             matplotlib.
           * fix drawlsmask so cylindrical projections work correctly when
             longitude range outside of -180 to 180.
           * python 3 compatibility.
           * added lic_demo.py to examples (line integral convolution,
             requires scikit.vectorplot).
           * removed deprecated NetCDFFile.
           * added zorder keyword to drawmapscale.
version 1.0.1 (svn revision 8967)
           * regenerated C source with cython 0.14.1.
           * added new "allsky" example from Tom Loredo.
           * added 'celestial' keyword - if True astronomical convention for
             longitude is used (negative for 'east', positive for 'west').
             celestial=True implies resolution=None (no continents or
             coastlines).
           * improve placement of labels for parallels for pseudo-cylindrical
             projections like mollweide, hammer.
           * added support for Hammer projection (required adding inverse
             projection to proj4 src in src/PJ_hammer.c).
           * updated src/pj_mutex.c from proj4 svn to fix a threading bug
             on Windows.
           * if you try to transform NaNs to/from map projection coords, 1.e30
             is returned (previously, this caused a segfault for some
             projections).
           * NetCDFFile function deprecated, will be removed in 1.0.2.  Issue
             warning advising users to use netcdf4-python instead.
           * Deleting an item from the dicts returned by drawparallels
             and drawmeridians removes the corresponding parallel or meridian (and
             associated labels) from the plot.
           * add a remove method to the tuples that are returned in
	     the dicts returned by drawparallels and drawmeridians.
version 1.0   (svn revision 8531)
	   * don't force adjustable='box' so Basemap is compatible
             with AxesGrid. Added fcstmaps_axesgrid.py example.
           * add support for plotting on unstructured grids using
             keyword 'tri' in pcolor,contour,contourf methods (which
             then forward to tripcolor, tricontour, tricontourf axes
             methods). examples/ploticos.py added.
	   * let continents that fill the whole map be filled.
           * added option for cubic spline interpolation in interp function
             (order=3) using scipy.ndimage.
           * added "near-sided perspective" projection for a satellite
             view at an arbitrary altitude.
           * patch from Stephane Raynaud to pass format string to
             drawmapscale, and allow units='m'.
           * updated proj4 source to version 4.7.0, pyproj to 1.8.6.
	   * add "is_land" method to check whether a point is over land or
             water.
	   * geos-3.1.1 now required. 3.2.0 source included (instead of 2.2.3).
           * shiftgrid no longer requires a cyclic point to be present
             (patch from Eric Bruning).
           * fix date2index bugs.
           * update date2index function with a bug-fix from netcdf4-python.
           * in contourf method, mask data outside map projection region
             (this prevents contourf from erroneously filling entire map).
           * added 'nightshade' method to shade night regions on a map.
             'daynight.py' example added to illustrate usage.
           * added lonmin, lonmax instance variables.
version 0.99.4 (svn revision 7332)
           * ax.frame replaced with ax.spines to maintain compatibility
             with matplotlib spines support.
           * added latmax kwarg to drawparallels and drawmeridians
             (patch from Chris Murphy).
           * added new example "plotmap_shaded.py" (shaded relief plot).
           * added new example "plothighsandlows.py".
           * add fix_aspect kwarg to Basemap.__init__, when False
             axes.set_aspect is set to 'auto' instead of default 'equal'.
             Can be used to make plot fill whole plot region, even if the
             plot region doesn't match the aspect ratio of the map region.
           * added date2index function, updated netcdftime to 0.7.1.
           * added maskoceans function.
           * update pupynere to version 1.0.8 (supports writing large files).
           * added more informative error message in readshapefile when
             one of the shapefile components can't be found.
version 0.99.3 (svn revision 6780)
           * if upper right/lower left corners nor width/height given for
             azimuthal equidistant ('aeqd') the whole world is drawn in
             a circle (only works for perfect spheres, not ellipsoids).
           * have setup.py check for already installed pyshapelib (just
             like it does for httplib2 and pydap).
           * Basemap will now look for it's data in BASEMAPDATA.
             If that env var not set, it will fall back to it's
             default location.
           * if readshapefile is called with drawbounds=True, a
             LineCollection object is appended to the returned tuple.
           * make sure drawmapscale method returns a list of objects that
             can be iterated over to remove them from the plot.
           * fillcontinents was returning just last Polygon instance.
             Now returns a list of all Polygon instances.
           * bluemarble/warpimage:  pass kwargs to imshow,
             return Image instance.
version 0.99.2 (svn revision 6541)
           * fix drawlsmask method so that it works for cylindrical
             projections with limits outside (-180,180).
           * added 'scale' keyword to bluemarble and warpimage methods to
             downsample image background.
           * Made lat_ts default to 0 for mercator.
           * Now can specify just lon_0 for all cylindrical projections
             (to produce global map centered on lon_0).
           * Added save_background.py example, showing how to re-use
             a map background without redrawing coastlines.
           * Added embedding_map_in_wx.py example (courtesy of
             Mauro Cavalcanti).
           * Added masked array support to shiftgrid function
             (thanks to Jesper Larsen).
           * defer import of netcdf stuff till it is needed (in NetCDFFile
             function).
           * Added McBryde-Thomas Flat Polar Quartic (projection =
             'mbtfpq'), Gall Stereographic Cylindrical (projection =
             'gall') and van der Grinten (projection = 'vandg').
           * fix bugs in warpimage and bluemarble methods for several projections.
           * bugfix patch for rotate_vector from David Huard.  David
             also contributed the beginnings of a test suite.
           * make sure scatter method sets pyplot color mappable.
           * added cubed_sphere example.
           * updated NetCDFFile to use pupynere 1.0.2 (now can write as well
             as read!).
           * now works with geos version 3.
           * added "proj4string" Basemap instance variable.
           * testgdal example now uses gdal to read topo data from a raster
             DEM file and ogr to read state boundaries from a shape file.
           * warpimage method can now handle gray-scale images, and
             images specifed as URLs (for example, the Blue Marble images from
             http://earthobservatory.nasa.gov/Newsroom/BlueMarble/BlueMarble_monthlies.html).
version 0.99.1 (svn revision 5961)
           * geos-2.2.3 patched for compatibility with gcc 4.3.
           * added "barbs" method to draw wind barbs on the map.
           * added "tissot" method for generating Tissot's indicatrix
             (see example plot_tissot.py).
           * fixed processing of coastlines for gnomonic projection.
           * don't try to use PyNIO in NetCDFFile (it was causing
             too many suprises).
           * start of improved documentation using Sphinx/docutils.
             Can be viewed at
             http://matplotlib.sf.net/basemap/doc/html
           * change default behaviour of num2date and date2num to be
             the same as matplotlib counterparts.
version 0.99 (svn revision 5344)
           * fix to warpimage method for API change in matplotlib 0.98.0.
           * updated pyproj to 1.8.6.
           * fixed bug in NetCDFFile creating masked arrays when both
             _FillValue and missing_value exist.
           * drawparallels and drawmeridians return a dictionary containing
             the Line2D and Text instances associated with each lat or lon.
           * drawcoastlines, drawcountries and friends now have
             PatchCollection return values.
           * make sure '_nolabel_' set on coastlines, countries, states,
             rivers, parallels and meridians so they are not included in
             a legend.
           * added drawmapscale method to create a map scale bar similar
             to that available with the GMT's psbasemap.
           * Now lives in mpl_toolkits.basemap.  Instead
             of 'from matplotlib.toolkits.basemap import Basemap',
             use 'from mpl_toolkits.basemap import Basemap'.
             All examples changed.  Uses matplotlib mpl_toolkits
             namespace package, so basemap can now be installed
             if matplotlib is installed as an egg. Python 2.3
             support re-enabled.
           * changed _geos to _geoslib, so as not to conflict with
             the python module bundled with the GEOS library.
           * some fixes/enhancements for omerc projection (added 'no_rot'
             flag).
           * added warpimage method for displaying an image background.
             Default is NASA's blue marble image, which is included.
version 0.9.9.1 (svn revision 4808)
           * require python 2.4 (really only needed for building).
             Once namespace packages are re-enabled in matplotlib,
             python 2.3 should work again.
version 0.9.9 (svn revision 4799)
           * updated proj4 sources to version 4.6.0.
           * removed hidden dependency on setuptools (in dap module).
           * fixed exception handling bug in code that looks for
             intersection between boundary feature and map projection
             region.
           * setup.py now looks for GEOS library in a few standard
             places (/usr/local, /opt, $HOME, /sw) if the GEOS_DIR
             environment variable not set.  This is a workaround for a
             new Leopard 'feature' (sudo does not inherit enviroment
             variables).
           * added support for reading Point and MultiPoint shapes
             from ESRI shapefiles.
           * now automatically draws figure if running in
            interactive mode (so draw() does not need
            to be called explicitly in ipython).
           * added num2date and date2num functions, which use
             included netcdftime module.
version 0.9.8 (svn revision 4526)
           * fixes for filling continents in orthographic projection.
           * added 'maskandscale' kwarg to NetCDFFile to
             optionally turn off automatic masking and rescaling
             of variable data.
           * NetCDFFile will try to use PyNIO if it installed
             and the file cannot be read with pupynere.  This
             allows GRIB1,GRIB2,HDF4 and HDFEOS2 files to
             be read.
           * 'fmt' kwarg to drawparallels and drawmeridians can
             now be a custom string formatting function (example
             customticks.py demonstrates usage).
           * remove 'linestyle' kwarg from drawparallels and
             drawmeridians (it never did anything anyway since
             it was overridden by the 'dashes' kwarg).
           * modify NetCDFFile to use dap module to read remote
             datasets over http.  Include dap and httplib2 modules.
           * modify NetCDFFile to automatically apply scale_factor
             and add_offset, and return masked arrays masked where
             data == missing_value or _FillValue.
           * add 'fill_color' option to drawmapboundary, to optionally
             fill the map projection background a certain color.
           * added 'sstanom' colormap from
             http://www.ghrsst-pp.org/GHRSST-PP-Data-Tools.html
version 0.9.7 (svn revision 4422)
           * fixed bug in drawlsmask for 'moll','robin' and 'sinu'
             projections.
           * added lake_color keyword to fillcontinents.
           * fixed a bug in the 'tmerc' projection.
           * added pure python NetCDFFile reader from Roberto De Almeida
             to basemap namespace
             (from matplotlib.toolkits.basemap import NetCDFFile).
           * added support for full-resolution boundaries (will be
             a separate download).  Full-res files (totaling around
             100 mb) available in SVN.
           * high-resolution boundaries now included.
           * postpone processing of countries, states and river
             boundaries until a draw is requested. Only the
             coastlines are processed in __init__.
           * use a Pyrex/Cython interface to the GEOS library
             (http://geos.refractions.net - LGPL license)
             to find geometries that are within map projection region.
             This speeds up instance creation for small map regions and
             high resolution coastlines. Boundary datasets now in binary
             format (I/O is faster). Requires GEOS version 2.2.3, source
             code included.
           * remove all numerix imports.
           * fix rotate_vector so it works in S. Hem and for non-orthogonal
             grids. Support for masked velocity vectors also added. (EF)
           * numpification. (EF)
version 0.9.6 (svn revision 3888)
           * fix addcyclic function so it handles masked arrays.
           * labelling of meridians and parallels now works with
             very small map regions (less than 0.2 degrees square).
           * Subregions of the globe may be specified with llcrnrlat,
             llcrnrlon,urcrnrlat,urcrnrlon keywords for 'ortho' and 'geos'.
             (illustrated by examples/geos_demo_2.py).
           * Added "labelstyle" keyword to drawparallels and drawmeridians.
             If set to "+/-", labels are given prefixed by "+" or "-",
             instead of suffixed with "N","S","E" or "W". Useful for
             astronomical plots, where the is no such thing and north, south
             east or west.
           * Added support for geostationary satellite projection
             (projection='geos'), contributed by Scott Sinclair.
             Illustrated by examples/geos_demo.py.
           * added a bunch of extra colormaps (mostly from GMT),
             and a script to plot them (examples/show_colormaps.py).
             To import new colormaps, use 'from matplotlib.toolkits.basemap
             import cm'
           * orthographic projection only defined for perfect sphere - raise
             an error if user tries to use an ellipsoid.
           * print a warning in contour, contourf in situations that may
             result in a screwy looking plot (x not monotonically increasing,
             because the data wraps around the edge of the plot). The warning
             suggests using the shiftgrid function to recenter the data on
             the map projection region.
           * fixed setup.py so it works properly with python 2.3,
             and on Windows.
           * added zorder keyword to drawmeridians, drawparallels,
             drawcoastlines, drawstates, drawcountries, drawrivers,
             readshapefile and fillcontinents.
           * numpy now required.
           * added 'srs' (spatial reference system) instance variable.
           * updated pyproj to version 1.8.3.  Now uses pyproj.Geod
             for Great Circle calculations.  proj.4 data files now included.
           * make sure axes ticks are always turned off, unless noticks=False
             set when creating Basemap instance.
20070314:  version 0.9.5 (svn revision 3083)
           * fixed examples to conform to 'one show() per script' rule.
           * intermediate coastlines now installed by default.
             basemap-data is no longer a separate package (couldn't
             figure out how to manage the egg).  If the 'h' res
             boundaries are needed, the data files must be manually
             put in place by the user. BASEMAP_DATA_PATH env var
             no longer used.
           * reorganized data files so that bdist_egg includes the data.
             setup-data.py now used to install the high-res data files.
           * make sure proj returns 1.e30 instead of HUGE_VAL for
             undefined transformations (HUGE_VAL is inf on most
             platforms, which gets embedded in the postscript, resulting
             in a un-renderable file)
           * typedef Py_ssize_t if necessary - ADS
           * rename pyproj.so _pyproj.so, added a python wrapper pyproj.py,
             moved pyproj into matplotlib.toolkits.basemap.
20061117:  version 0.9.4
           * added "Tissot's indicatrix" example.
           * 'extent' keyword was erroneously being passed to pcolor.
           * update proj4 source files to version 4.5.0.
           * updated pyproj to version 1.8.0 (better error handling).
20061017:  version 0.9.3
           * update pyproj.c to be compatible with python 2.5.
           * added new example ccsm_popgrid.py (contributed by Ivan Lima).
20060831:  version 0.9.2
           * fixed several bugs in drawlsmask method.
           * removed buggy optimizations for cylindrical projections not
             crossing the Greenwich meridian.
           * can now specify map projection region by setting width and height
             in projection coordinates (in meters) instead of specifying
             lat/lon of upper right and lower left corners.
20060727:  version 0.9.1
           * make sure llcrnrlat and llcrnrlon are not at poles for mercator.
           * use Eric Firing's new quiver in Basemap quiver method.
           * interp functions now work with masked arrays.
           * added some sanity checks for projection parameters.
           * change from classic to new-style classes.
           * removed deprecated 'createfigure' method.
           * fixed some creeping numpy'isms (which caused breakage
             when numarray or Numeric were used).
20060609:  version 0.9:
           * updated for new matplotlib aspect ratio handling.
           Now maps will always have the correct aspect ratio.
           * if resolution keyword is set to None when Basemap
           instance is created, no boundary data sets are needed
           (methods to draw boundaries, like drawcoastlines, will
           raise an exception).
           * update to proj4 module - renamed pyproj to avoid
           conflicts with proj4 module from CDAT.
           * createfigure method deprecated, since maps
           will now automatically have the correct aspect ratio.
           * Added new projections Xpstere, Xplaea, Xpaeqd (where X
           can be n or s).  These are special-case, polar-centric
           versions of the stereographic, lambert azimuthal equal area
           and azimuthal equidistant projections that don't require
           you specify the lat/lon values of the lower-left and upper-right
           corners.
           * fixed bugs in plot, scatter and mapboundary methods for
           miller, cylindrical and mercator projections.
           * 'crude' and 'low' resolution boundary datasets now installed
           by default.  basemap_data package now only needed for to get
           'intermediate' and 'high' resolution datasets.
           * moved all packages under single lib/ directory so
           setuptools' "develop" command works properly.
           * Added sinusoidal projection.
           * bilinear interpolation routines can return masked arrays with
           values outside range of data coordinates masked.
           * New examples (warpimage.py - warping an image to
           different map projections, polarmaps.py - simplified polar
           projections, garp.py - 'World According to Garp' maps).
           * pcolormesh method added.
           * drawlsmask method added for masking oceans and/or land areas.
           5 minute land-sea mask dataset added.
20060222:  version 0.8.2:  Minor bug fixes, mostly in examples.
20060203:  version 0.8.1:  Huge speedups for numpy
           (no significant differences for Numeric and numarray).
20060114:  version 0.8: added numpy compatibility
20051118:  version 0.7.2.1:
           There was a problem running examples that read pickle files.
           The pickle files were created with numarray, and the
           data would not be read correctly using Numeric.  Fixed so
           that pickles are created with Numeric and Numeric is used
           to read them.
20051018:  version 0.7.2:
           * No longer requires numarray (interp function no
           longer uses numarray.nd_image).
           * Modified to work with the new ContourSet returned
           by contour and contourf.
           * Axes frame turned off by default for non-rectangular
           projections ('ortho','robin' and 'moll').
           * Added createfigure method to create a figure with the
           same aspect ratio as the map using pylab.figure.
           * Resets subplot.params defaults so that default
           axes rectangle will have both a width and height of 0.9
           (this ensures that the figure size determines that aspect
           ratio of the plot).
           * readshapefile method raises an exception if the vertices
           look like they are not in geographic (lat/lon) coordinates.
20050921:  version 0.7.1:
           Fixed several bugs in meridian/parallel labelling and
           Cylindrical projections that crossed greenwich were not
           being handled properly.
           Added 'fmt' keyword arg to drawmeridians and drawparallels
           (default is '%g').
           Fixed bug in 'readshapefile' that prevented boundaries from
           being drawn for 'cyl','merc' or 'miller' projections when the
           map region did not cross the greenwich meridian.
           Modified imshow method so 'origin' keyword is accepted (it
           was always set to 'lower' previously).
           Added testgdal.py example showing how to plot raster
           geospatial data with gdal module (gdal.maptools.org).
           Meridians and parallels labelled correctly when
           rcParams['text.usetext']=True.
20050914:  version 0.7:
           Optimizations to reduce the time it takes to create
           a Basemap class instance - now nearly 4 times faster
           when using resolution='i'.
           Added 'h' (high) resolution boundary data.
           Added datasets for major rivers, "drawrivers" class method.
           Fixed some errors in boundaries datasets.
           Boundary datasets now installed in a separate package.
           Should now handle Numeric to numarray conversions internally,
           so removed warning when rcParams['numerix'] != 'numarray'.
           Changed default area_thresh so it depends on coastline
           resolution (10000 for 'c' declining to 10 for 'h').
20050901:  version 0.6.2:
           Warning issued if numerix = 'Numeric' (a user reported
           crashes due to botched Numeric --> numarray conversions).
           Changes to proj4 wrapper to make Basemap instances pickle-able.
20050814:  version 0.6.1:
           Added hurrtracks.py example (plot hurricane tracks from
           shapefile).
           Now includes pyshapelib (extracted from Thuban source).
20050811:  version 0.6:
           sf bug #1254163 (make sure lat/lon limits of projection are floats)
           wiki_example.py and plotclimdiv.py examples added.
           Added 'readshapefile' method for reading and plotting data
           from ESRI shapefiles (requires pyshapelib from Thuban).
           plotclimdiv.py is an example that illustrates this.
20050628:  version 0.5.2:
           fixed bug in meridian labelling when lon > 360 or lon < -180.
           Now fully "pylab free" if 'ax' keyword is used in Basemap.__init__
           or all of the Basemap methods that do drawing.
20050626:  version 0.5.1:
           Added ability to specify an existing axis instance in
           all Basemap methods (instead of just using current one).
           Default is still to use current axis instance.
           Full control of font properties for parallel and meridian
           labels (now uses unicode instead of mathtext for degree symbol).
20050602:  version 0.5
           Added Orthographic, Mollweide and Robinson projections.
           Added 'drawmapboundary' method to draw a
           line around the map projection region.
           Added 'suppress_ticks' keyword to Basemap.__init__
           It's True by default, but can be set to False if you
           want to label ticks in native map projection coordinates.
           Added 'rotate_vector' method to rotate vectors to map
           projection coordinates (without interpolation, as in
           'transform_vector' method).
           Modified pcolor, contour, contourf methods to use
           masked arrays.  Now requires matplotlib-0.81
           drawparallels and drawmeridians methods now take optional
           keyword arguments 'xoffset' and 'yoffset', which control how
           far from the edge of the map labels are drawn.
20050511:  version 0.4.3
           Added Oblique Mercator.
           great circle calculations now use vincenty's equations
           for an ellipsoid.
20050510:  version 0.4.2
           transform_vector now does a simple rotation of the vector
           from geographic to map coordinates, preserving the vector
           magnitude (removed 'preserve_magnitude' keyword).
           Minor bugs in Miller and Mercator projections fixed.
           Added Gnomonic, Cassini-Soldner and Polyconic projections
           (now 13 projections supported).
20050509:  version 0.4.1
           Miller projection was erroneously referred to by the name
           'miller' (instead of 'mill') - fixed.  Added the ability
           to specify the major and minor sphere radii by specifying
           the 'rsphere' keyword in __init__ to be a tuple instead of
           a scalar.
20050505:  version 0.4
           added support for miller cylindrical, equidistant conic,
           and azimuthal equidistant projections.  Bugs fixed in
           coastline drawing and continent filling methods.
20050427:  version 0.3.3
           fillcontinents modified to not fill lakes (they
           are actually still filled, but with axis background color).
20050420:  version 0.3.2 - code cleanups and docstring typo fixes.
           env var BASEMAP_DATA_PATH can now be used to point to
           data files in a non-standard install (i.e using --prefix
           or --home).
20050415:  version 0.3
           Added transform_scalar and transform_vector methods for
           interpolating scalar and vector fields to a map projection
           grid.  Added shiftgrid and addcyclic convenience functions.
           Added quiver_demo.py example illustrating how to plot
           wind vectors on a map. Updated examples to use
           transform_scalar instead of calling interp directly.
           Mercator x coordinate units changed from degrees to meters
           setup.py now installs data in python-version-numbered directory.
           (so you can have separate copies for different python versions).
           Fixed aspect ratio of mercator plots.
           Added set_axes_limits,plot,scatter,contourf,contour,
           pcolor and quiver methods.
           axes instance no longer a method argument (API change).
20050410:  version 0.2.1 - add gcpoints and drawgreatcircles methods.
           Added intermediate resolution coastline and political
           boundary databases. Fixed bug in filling continents,
           and another bug in drawing parallels/meridians. Added
           'ireland.py' example.
20050404:  version 0.2 - drawparallels and drawmeridians can now
           draw labels at edge of map.
20050331:  version 0.1.2 - now can handle negative longitudes (patch
           from Michael Brady). basemap.interp can now handle irregular
           (but still rectilinear) lat/lon grids.
20050203:  version 0.1 released on SF.
20050202:  Changed LineCollections.color to set_color in a try/except block.
           (color was a typo in 0.71 and is deprecated).
20050130:  no user visible changes.  Uses new pyrex generated
           C extension interface to proj.4 which is twice as
           fast as the Thuban one.
20050124:  some code reorg, fixed bugs in S. Hem. projections.
           xmin,xmax,ymin,ymax Basemap instance variables renamed
           to llcrnrx,urcrnrx,llcrnry,urcrnry. Added __call__
           and makegrid methods to Basemap class.
20050121:  proj.4 is now called via a C-library interface, instead
           of using the proj command-line tool via os.popen.
20050119:  fixed glitches in drawing of parallels and meridians.