Commit c35090a5 authored by SVN-Git Migration's avatar SVN-Git Migration

Imported Upstream version 1.0.3+dfsg

parent 978dbc4f

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

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 "" example.
* add streamplot method, along with example.
* add boundarylats, boundarylons Basemap attributes (arrays
describing map boundaries - useful for illustrating map projection
region on another map). Example illustrating usage
( 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 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
* fix broken daynight terminator function.
* added kav7 (Kavrayskiy VII) and eck4 (Eckert IV) projections
* update pyproj source from Includes
new more robust and accurate pure python code for geodesic computations
from geographiclib.
* bug fixes for celestial projections, and non-standard sphere
radii (
* 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 (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
* The fillcontinents method doesn't always do the right thing. Matplotlib
always tries to fill the inside of a polygon. Under certain situations,
what is the inside of a coastline polygon can be ambiguous, and the
outside may be filled instead of the inside. To trigger this,
run the example with lon=-120,lat=60.
outside may be filled instead of the inside.
Workaround - mask the land areas with the drawlsmask method instead of
filling the coastline polygons (this is illustrated in the example).
......@@ -64,7 +64,9 @@ include examples/
include examples/
include examples/
include examples/earth_lights_lrg.jpg
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
......@@ -75,11 +77,13 @@ include examples/cities.shx
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/
include examples/README
include lib/mpl_toolkits/
include lib/mpl_toolkits/basemap/
......@@ -96,5 +100,5 @@ include doc/README.txt
include doc/
include doc/
include doc/index.rst
recursive-include geos-3.3.1 *
recursive-include geos-3.3.3 *
recursive-include lib/mpl_toolkits/basemap/data *
Metadata-Version: 1.0
Metadata-Version: 1.1
Name: basemap
Version: 1.0.2
Version: 1.0.3
Summary: Plot data on map projections with matplotlib
Author: Jeff Whitaker
......@@ -14,9 +14,11 @@ Description:
example of what it can do.
Keywords: python,plotting,plots,graphs,charts,GIS,mapping,map projections,maps
Platform: any
Classifier: Development Status :: 4 - Beta
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Visualization
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Operating System :: OS Independent
......@@ -12,7 +12,7 @@ matplotlib 1.0.1 (or higher)
numpy 1.4 (or higher)
The GEOS (Geometry Engine - Open Source) library (version 3.1.1 or higher).
Source code is included in the geos-3.3.1 directory.
Source code is included in the geos-3.3.3 directory.
PIL ( is optional (only
needed for Basemap warpimage and bluemarble methods).
......@@ -27,8 +27,12 @@ C extensions.
source code from proj.4 ( is included in the
'src' directory under the terms given in LICENSE_proj4.
source code from geographiclib (
is included in the 'lib/mpl_toolkits/basemap' directory under the terms
given in LICENSE_geographiclib.
source code for the GEOS library is
included in the 'geos-3.3.1' directory under the terms given in
included in the 'geos-3.3.3' directory under the terms given in
LICENSE_geos. from is included under the terms given
......@@ -39,8 +43,8 @@ from datasets provided with the Generic Mapping Tools
and are included under the terms given in LICENSE_data.
Everything else (including src/_proj.pyx, src/_geod.pyx, src/_pyproj.pxi,
src/_proj.c, src/_geod.c, src/_geos.c, and src/_geos.pyx):
Everything else (including src/_proj.pyx,,
src/_proj.c, src/_geos.c, and src/_geos.pyx):
copyright (c) 2011 by Jeffrey Whitaker.
......@@ -59,7 +63,7 @@ PERFORMANCE OF THIS SOFTWARE.
see scripts in 'examples' directory for example usage.
......@@ -80,7 +84,7 @@ geos_c.h is in /usr/local/include, set GEOS_DIR to /usr/local).
Then go to step (3). If you don't have it, you can build it from
the source code included with basemap by following these steps:
> cd geos-3.3.1
> cd geos-3.3.3
> export GEOS_DIR=<where you want the libs and headers to go>
A reasonable choice on a Unix-like system is /usr/local, or
if you don't have permission to write there, your home directory.
......@@ -23,12 +23,13 @@ import sys, os
# Add any Sphinx extension module names here, as strings. They can be extensions
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
extensions = ['sphinx.ext.autodoc']
extensions = ['sphinx.ext.autodoc',
#extensions = ['matplotlib.sphinxext.mathmpl',
# 'sphinx.ext.autodoc', 'matplotlib.sphinxext.only_directives',
# 'matplotlib.sphinxext.plot_directive',
# 'sphinx.ext.inheritance_diagram',
# 'matplotlib.sphinxext.ipython_console_highlighting']
# 'matplotlib.sphinxext.ipython_console_highlighting',
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
......@@ -94,7 +95,7 @@ pygments_style = 'sphinx'
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
#html_static_path = ['_static']
# If nonempty, this is the file name suffix for generated HTML files. The
# default is ``".html"``.
......@@ -164,3 +165,14 @@ latex_use_parts = True
# Show both class-level docstring and __init__ docstring in class
# documentation
autoclass_content = 'both'
################ plot directive configurations #####################
plot_html_show_formats = False
plot_include_source = True
plot_rcparams = {'figure.figsize':[8, 6]}
plot_formats = [('png', 100), # pngs for html building
('pdf', 72), # pdfs for latex building
......@@ -5,26 +5,10 @@ import os
import shutil
import sys
def check_build():
build_dirs = ['build', 'build/doctrees', 'build/html', 'build/latex',
'_static', '_templates']
for d in build_dirs:
except OSError:
def figs():
os.system('cd users/figures/ && python')
def html():
os.system('sphinx-build -b html -d build/doctrees . build/html')
def latex():
if sys.platform != 'win32':
# LaTeX format.
os.system('sphinx-build -b latex -d build/doctrees . build/latex')
......@@ -47,12 +31,11 @@ def clean():
def all():
funcd = {'figs':figs,
funcd = {
......@@ -12,6 +12,5 @@ shape is not.
Distortion is very large near the poles in this projection.
.. literalinclude:: figures/
.. image:: figures/aea.png
.. plot:: users/figures/
......@@ -12,13 +12,9 @@ The specified point ``lon_0, lat_0`` shows up as a black dot in the center of th
Here's an example using the width and height keywords to specify the map region.
.. literalinclude:: figures/
.. image:: figures/aeqd.png
.. plot:: users/figures/
If both the width/height and corner lat/lon keywords are omitted, the whole world is
plotted in a circle.
.. literalinclude:: figures/
.. image:: figures/aeqd_fulldisk.png
.. plot:: users/figures/
......@@ -7,6 +7,4 @@ The transverse aspect of the equidistant cassindrical projection.
The globe is first rotated so the central meridian becomes the "equator",
and then the normal equidistant cylindrical projection is applied.