Announcing PyGMT v0.3.0, now with functions for making inset and subplot maps!
The PyGMT team is thrilled to present version v0.3.0, a release that packs a great punch! Some of the highlights for this release include:
- Wrap inset (#788) for making overview maps, and subplot (#822) for multi-panel figures
- Apply standardized formatting conventions (#775) across most documentation pages
- Drop Python 3.6 support (#699) so PyGMT now requires Python 3.7 or newer
The full list of changes can be found in the changelog. Installation instructions can be found at Installing — PyGMT, or you can try it online first at try-gmt! Our new maintainer @willschlitzer has done a great job wrapping new functions like grd2cpt while increasing the number of walkthrough tutorials! Cheers too to new contributors @michaelgrund for making multiple new gallery examples on plotting map items, and to our GMT postdoc @maxrjones who’s done a thorough review of our plotting documentation at #881 and helped out with setting up the PyGMT Devs Slack channel and so much more!
Since it’s a really big release this time around, we encourage you to explore the main changes visually at the PyGMT gallery and tutorials page!
Roadmap to v0.4.0
To keep the momentum going, here’s what we have planned for the next release (some which we need help with!):
- Integration with geopandas to plot shapely geometries (#608)
- Wrap more GMT modules e.g. velo (#525), xyz2grd (#636), triangulate (#731), solar (#804), rose (#794) and histogram (#593)
- Improve the
Figure.show()
method for displaying previews (#529) Figure.hlines()
andFigure.vlines()
for plotting horizontal and vertical lines (#670)
Deprecation warnings
To keep in line with the rest of the scientific software stack and ensure a relatively bug-free product, we will likely be dropping support for some packages in the next minor (PyGMT v0.4.0) release, so make sure you keep things up to date!
- Drop Numpy<=1.16 as per NEP 29 — Recommend Python and Numpy version support as a community policy standard, see issue #690
- Potentially drop GMT 6.1.1, so that GMT 6.2.0 is required for PyGMT v0.4.0 (though this is up for discussion).
The compatibility matrix will be listed on PyGMT so keep an eye out!
Call for contributors
Contributing means so much more than writing code! We need help with outreach, documentation, and maintenance as well. We are keen on growing a more diverse and international
community, and these are stuff that are in the pipeline:
- Design a fresh new PyGMT logo!
- PyGMT tutorial at SciPy 2021 (12-13 July 2021) - submission proposal is being finalized today and we’ll need help with making Jupyter notebooks in the coming months
- Outreachy remote internships for supporting diversity (~Aug/Sep 2021) - need funding/volunteers/people good at proposal writing
- More PyGMT community meetings online! See e.g. the last one held on early Feb 2021. We’ll look into doing more before each PyGMT release (quarterly?).
- Writing up a PyGMT paper (see #677) sometime in 2021/2022.
Don’t know where to start? Go to Contribute to GenericMappingTools/pygmt · GitHub or reach out to us here on the forum (now with a dedicated PyGMT subsection)!
Enjoy