Basemap
Plot on map projections (with coastlines and political boundaries) using matplotlib.
Requirements
-
Python 2.6 (or higher)
-
matplotlib
-
numpy
-
The GEOS (Geometry Engine - Open Source) library (version 3.1.1 or higher).
Source code is included in thegeos-3.3.3
directory. -
On Linux, if your Python was installed via a package management system, make
sure the correspondingpython-dev
package is also installed. Otherwise, you
may not have the Python header (Python.h
), which is required to build Python
C extensions.
Optional
-
OWSLib (optional) It is needed for
theBaseMap.wmsimage
function. -
Pillow (optional) It is needed for
Basemap warpimage, bluemarble, shadedrelief, and etop methods. PIL should
work on Python 2.x. Pillow is a maintained fork of PIL.
Copyright
Source code for the GEOS library is included in the geos-3.3.3
directory
under the terms given in LICENSE_geos
.
The land-sea mask, coastline, lake, river and political boundary data are
extracted from datasets provided with the
Generic Mapping Tools (GMT) and are included
under the terms given in LICENSE_data
.
Everything else (including src/_geos.c
and src/_geos.pyx
) is licensed under
the terms given in LICENSE
:
Copyright (C) 2011 Jeffrey Whitaker
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notices appear in all copies and that
both the copyright notices and this permission notice appear in
supporting documentation.
THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO
EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
Documentation
See http://matplotlib.github.io/basemap/
See scripts in examples
directory for example usage.
Read the FAQ and/or email the matplotlib-users mailing list if you have
problems or questions.
Install
-
Install pre-requisite Python modules numpy and matplotlib.
-
Then download
basemap-X.Y.Z.tar.gz
(approx 100 MB) from the
GitHub Releases page,
unpack andcd
tobasemap-X.Y.Z
. -
Install the GEOS library. If you already have it on your system, just
set the environment variableGEOS_DIR
to point to the location oflibgeos_c
andgeos_c.h
(iflibgeos_c
is in/usr/local/lib
andgeos_c.h
is in
/usr/local/include
, setGEOS_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.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. > ./configure --prefix=$GEOS_DIR > make; make install
-
cd
back to the top level basemap directory (basemap-X.Y.Z
) and run
the usualpython setup.py install
. Check your installation by running
"from mpl_toolkits.basemap import Basemap"
at the Python prompt. -
To test,
cd
to the examples directory and runpython simpletest.py
.
To run all the examples (except those that have extra dependencies
or require an internet connection), executepython run_all.py
.
An alternative method is using pip
:
pip install --user git+https://github.com/matplotlib/basemap.git
Contact
Ben Root [email protected]