PyGMT v0.10.0 released

Announcing PyGMT v0.10.0, write non-ASCII characters and plot xarray.DataArray RGB images!

The PyGMT team is kicking off September with version v0.10.0! First, the highlights :tada::

  • Support non-ASCII characters in Figure.text (#2638) and other method arguments (#2584)
  • Three new tutorials and seven new gallery examples

Read through the changelog for the full list of changes. Installation/upgrade :arrow_up: instructions are at! Note that this version is still cross-compatible with GMT 6.3 and 6.4, but requires :snake: Python 3.9+ and NumPy 1.22+ following NEP29. Go try it online at try-gmt :rocket:.

Nice enhancements :sparkles::

New aliases :memo::

As usual, report any bugs :beetle: with the issue template on GitHub. Your feedback is what helps us to improve!

:bulb: New tutorial and gallery examples

Figure elements Interactive data visualization via panel Cartesian histograms
Figure elements Interactive data visualization via Cartesian histograms|713,326%
Highlight country, continent and state polygons Tile maps Envelope RGB image
Highlight country, continent and state polygons Tile maps Envelope RGB image
Quoted lines Decorated lines Cross-section along a transect
Quoted lines Decorated lines Cross-section along a transect13x875,50%

:railway_track: Roadmap to v0.11.0

The team has been focusing a lot more on the documentation and refactoring the internals of PyGMT in recent releases, but we do have plenty of features we’d like to add! Check out the good first issue label on GitHub or the list below for things you can help with!

  • Features/enhancements :sparkles:
    • Wrap fitcircle, clip, earthtide, movie, polar, sac, and coupe
    • Add Figure.hlines (#923) and Figure.vlines for plotting horizontal and vertical lines (#670)
    • Figure.shift_origin: Allow shifting the origin back to the original position after plotting (#2410)
    • Add load_* functions to support more planetary relief datasets (#2431)
  • Documentation improvements :book:
    • Add a beginner :beginner: friendly PyGMT tutorial that is a good roadmap for new GMT/PyGMT users (#770)
    • Add a tutorial explaining the generally accepted input types (#1268)
    • Add a gallery example showing the configuration of a scale bar (#2627)

We invite you to get involved in these efforts by reaching out on GitHub :rocket:!

:warning: Upcoming deprecations

  • v0.12.0
    • All plotting methods: Remove aliases xshift (X) and yshift (Y) (FutureWarning raised since PyGMT v0.8.0)
    • Figure.plot, Figure.plot3d, Figure.rose, Figure.velo: Remove parameter color, use fill instead (FutureWarning raised since PyGMT v0.8.0)
    • Figure.velo: Remove parameter uncertaintycolor, use uncertaintyfill instead (FutureWarning raised since PyGMT v0.8.0)
    • Figure.wiggle: Remove parameter color, use fillnegative or fillpositive instead (FutureWarning raised since PyGMT v0.8.0)
    • Figure.grdimage: Remove parameter bit_color, use bitcolor instead (Future Warning raised since PyGMT v0.10.0)
  • v1.0.0
    • Short form aliases (e.g. R) will not work if long form aliases (e.g. region) are available (SyntaxWarning raised since PyGMT v0.4.0, see #1316)

The compatibility matrix is listed at, so make sure you keep things up to date!

:world_map: Conference presentations/workshops/sprints

We hope that this new PyGMT release will be useful for those of you making posters for the upcoming AGU Fall Meeting in December 2023! Would you like to lead a PyGMT or GMT workshop at EGU, AGU, FOSS4G, or some other regional conferences next year in 2024? Let us know on the forum and we can help to organize and add it to!

Onwards :rocket:

P.S. Share the word on Twitter @gmt_dev :bird:, Instagram @genericmappingtools :camera_with_flash:


Just piggy-backing on this thread - colleagues mentioned as nice overview page for Python-related plotting modules/libraries. I haven’t seen PyGMT on that list yet - maybe worthwhile adding?

The header text says

This page lists OSS libraries for visualizing data in Python. If you see any missing Python tools, please open a PR for tools.yml. Tools are sorted in each category according to their total downloads (pypi + conda) per month when added to the list