$npx skillfedfor your agent

descartes

Use geometric objects as matplotlib paths and patches

With conditionsPyPI GISReleased Jan 2017676.4K downloads / moBSDPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — descartes-1.1.0-py2-none-any.whl · descartes-1.1.0-py3-none-any.whl
v1.1.0 · released 2017-01-17 · 1 runtime deps: matplotlib

Yes, if you are working with geometric objects and matplotlib in a stable codebase where you do not expect frequent updates. The package is mature and does one thing well, but its abandonment since 2017 means you should verify compatibility with your current matplotlib and Python versions before adopting it in new projects.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires matplotlib; numpy is an implicit dependency.
  • Shapely 1.2+ is optional but typically used for geometric operations.
  • Low install friction with pure Python wheels available.

License · maintenance · safety

BSD (permissive) — BSD license (permissive) places no significant restrictions on use, modification, or distribution in most contexts.

last release 2017-01-17 (3496 days)

0 known vulnerabilities (OSV.dev, 2026-08-14) · 676,373 downloads/mo, #5,383 on PyPI

Verify before relying

pip install descartes matplotlib

from matplotlib import pyplot
from descartes import PolygonPatch

patch = PolygonPatch({'type': 'Polygon', 'coordinates': [[(0, 0), (1, 0), (1, 1), (0, 1), (0, 0)]]}, fc='blue', alpha=0.5)
ax = pyplot.gca()
ax.add_patch(patch)
pyplot.show()
  • Whether the package works reliably with current versions of matplotlib and numpy given its 2017 release date.
  • Compatibility with modern Python versions beyond what classifiers declare.
  • Whether active alternatives exist for this use case in the current ecosystem.
Same gist for agents: .md · .json

What it is and what it does

Descartes is an adapter layer that converts geometric objects and GeoJSON-like dictionaries into matplotlib patch objects for visualization. It bridges geometric computation and matplotlib's rendering system, allowing you to plot spatial data directly without manual coordinate extraction. The package accepts objects with a `__geo_interface__` property or compatible geometric structures and converts them into matplotlib patches that can be added to axes.

The package is stable and has been in production use since 2010, but it is no longer actively maintained—the last release was in 2017. It has no known security vulnerabilities and carries a permissive BSD license. Its single runtime dependency is matplotlib, with numpy as an implicit requirement.

Use it for

  • Plot geometric objects directly on matplotlib figures without manual coordinate extraction.
  • Visualize GeoJSON geometries in Python by converting them to matplotlib patches for display.
  • Create spatial plots where you want to leverage geometric operations and matplotlib's rendering.
  • Render transformed geometries as colored patches with transparency and styling.
  • Build exploratory plots of spatial data without writing custom coordinate-to-patch conversion code.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you are working with geometric objects and matplotlib in a stable codebase where you do not expect frequent updates.

The package is mature and does one thing well, but its abandonment since 2017 means you should verify compatibility with your current matplotlib and Python versions before adopting it in new projects.

Install

descartes on PyPI

Before you install

Low install friction with pure Python wheels available. However, the package is abandoned—last release was in 2017, over 3496 days ago. No recent maintenance or updates; use only if existing functionality meets your needs.

Requires matplotlib; numpy is an implicit dependency. Shapely 1.2+ is optional but typically used for geometric operations.

License in practice

BSD license (permissive) places no significant restrictions on use, modification, or distribution in most contexts.

Quickstart

pip install descartes matplotlib

from matplotlib import pyplot
from descartes import PolygonPatch

patch = PolygonPatch({'type': 'Polygon', 'coordinates': [[(0, 0), (1, 0), (1, 1), (0, 1), (0, 0)]]}, fc='blue', alpha=0.5)
ax = pyplot.gca()
ax.add_patch(patch)
pyplot.show()

Verify before relying

  • Whether the package works reliably with current versions of matplotlib and numpy given its 2017 release date.
  • Compatibility with modern Python versions beyond what classifiers declare.
  • Whether active alternatives exist for this use case in the current ecosystem.

Package facts

LicenseBSD permissive
Python supportNot specified
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
matplotlib
MaintenanceAbandoned 3,496 days since the last release
First released
Downloads676,373 / month, #5,383 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: Scientific/Engineering :: GIS

Evidence: descartes-1.1.0-py2-none-any.whl; descartes-1.1.0-py3-none-any.whl

Tags

Capabilities
geometry matplotlib patchesgeojson visualization matplotlibgeometric shapes plottingmatplotlib patch conversiongis data visualizationpolygon rendering matplotlibgeometry plotting library
Topics
geospatialvisualizationmatplotlib-integration
PyPI keywords
matplotlibgisgeojsongeometry

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “geometry matplotlib patches”

  • descartesConverts geometric objects and GeoJSON-like data into matplotlib…
  • timpleTimple extends Matplotlib with locators and formatters for plotting…
  • matplotlib-vennPlots area-weighted two- and three-circle Venn diagrams using…

Give your agent the search over MCP, or paste the wish link into any chat.

More GIS packages

shapely Worth it
PyPI · GIS · released Sep 2025

Shapely provides Python tools for creating, manipulating, and analyzing 2D geometric objects (points, lines, polygons) using the GEOS library, with both scalar and vectorized NumPy-based operations.

BSD-3-Clausecompiled wheel · 3.10+
85.8Mdownloads / mo
pyproj Unrated
PyPI · Scientific/Engineering · released Aug 2025

pyproj provides a Python interface to PROJ, enabling cartographic projections and coordinate system transformations for geospatial applications.

MITcompiled wheel · 3.11+
28.0Mdownloads / mo
geopandas Worth it
PyPI · GIS · released Jun 2026

GeoPandas extends pandas DataFrames to handle geographic data, combining pandas operations with shapely geometry and spatial analysis capabilities that would otherwise require a spatial database.

Install it if you work with geographic data in Python and want to avoid setting up a spatial database or learning a separate GIS tool.

BSD-3-Clausepure Python · 3.10+
24.8Mdownloads / mo
geopy Worth it
PyPI · Python Modules · released Jul 2026

geopy is a Python client for geocoding and distance calculation that converts addresses to coordinates and vice versa using multiple web-based geocoding services, and computes geodesic and great-circle distances between geographic points.

Install it if you need geocoding or distance calculations in your application.

MITpure Python · 3.8+
19.0Mdownloads / mo
pyogrio Worth it
PyPI · GIS · released Jun 2026

Pyogrio provides fast, bulk-oriented read and write access to vector spatial data formats (Shapefile, GeoPackage, GeoJSON, etc.) via GDAL/OGR bindings, typically for use with GeoPandas GeoDataFrames.

MITcompiled wheel · 3.10+
17.2Mdownloads / mo
h3 Worth it
PyPI · GIS · released May 2026

h3 provides Python bindings to Uber's H3 geospatial indexing library, converting geographic coordinates into hierarchical hexagonal grid cells and performing spatial operations on them.

Apache-2.0compiled wheel · 3.10+
12.1Mdownloads / mo

See also matplotlib-venn · Cartopy · antimeridian · shapely-polyskel · osm2geojson · pygeoif · geomet · highcharts-maps · pygeos