Version 0.23 (April 10, 2024)#

Cartopy has been relicensed from LGPL-3 to BSD-3-Clause. All contributions to Cartopy are now under the BSD-3-Clause license.

Python 3.12 and Numpy 2 are now supported and the new minimum supported versions of dependencies that have been updated are:

  • Matplotlib v3.5

  • Pyshp v2.3

There are several updates to the geometry and feature handling, making these more compatible with the Matplotlib semantics.

Features#

  • Xianxiang Li added the ability to modify the properties of the stock images (PR #2230)

  • @lgolston updated the shapefile readers and added documentation. (PR #2236)

  • Ruth Comer turned the GridLiner into a Matplotlib Artist making it easier to add and remove gridlines and fewer internal draws for better performance. (PR #2249, PR #2252)

  • The cartopy feature download script (useful for downloading Natural Earth Features for offline use) can be invoked within the package directly using python -m cartopy.feature.download, or through the installed command line interface using cartopy-feature-download. (PR #2263)

  • The Stamen Maps API is no longer available. There is a new class StadiaMaps that can be used to access the Stadia Maps API which contains the Stamen styled tiles. (PR #2269)

  • Greg Lucas made it easier to handle projections on non-earth bodies that would error previously. (PR #2283)

  • Kevin Dungs added the ability to use Levels 5 and 6 in GSHHS features for Antarctica. (PR #2317)

  • Ruth Comer changed a single geometry that is split into two across a boundary to be drawn as a compound path rather than two independent paths. This makes it easier to style the geometry consistently. (PR #2325)

  • Ruth Comer has converted the FeatureArtist into a Matplotlib Collection. This makes it easier to set properties on the features and enables arrays to be used to style a set of features. (PR #2323) A new example demonstrating this has been added to the gallery Choropleth map: associating data with geometries

Deprecations and Removals#