Cartopy is a Python package designed for geospatial data processing in order to produce maps and other geospatial data analyses.

Cartopy makes use of the powerful PROJ.4, NumPy and Shapely libraries and includes a programmatic interface built on top of Matplotlib for the creation of publication quality maps.

Key features of cartopy are its object oriented projection definitions, and its ability to transform points, lines, vectors, polygons and images between those projections.

You will find cartopy especially useful for large area / small scale data, where Cartesian assumptions of spherical data traditionally break down. If you’ve ever experienced a singularity at the pole or a cut-off at the dateline, it is likely you will appreciate cartopy’s unique features!


The 0.18 release is the final release that will support Python 2.7.

Getting started

The installation guide provides information on getting up and running. Cartopy’s documentation is arranged in userguide form, with reference documentation available inline.

The outline link found above the cartopy logo on all pages can be used to quickly find the reference documentation for known classes or functions.

For those updating from an older version of cartopy, the what’s new page outlines recent changes, new features, and future development plans.

Getting involved

Cartopy was originally developed at the UK Met Office to allow scientists to visualise their data on maps quickly, easily and most importantly, accurately. Cartopy has been made freely available under the terms of the GNU Lesser General Public License. It is suitable to be used in a variety of scientific fields and has an active development community.

There are many ways to get involved in the development of cartopy: