Skip to content

Track progress of wrapping GMT modules #4765

Description

@seisman

The project board tracks progress toward wrapping GMT modules, but it does not provide an overview of which modules are already wrapped. This PR summarizes PyGMT’s coverage of GMT modules. As of GMT 6.6.0, GMT provides 98 core modules and 59 supplementary modules (gmt --show-modules-core and gmt --show-modules), PyGMT v0.19.0 has wrapped ~60 core modules and 4 supplementary modules.

Contributions to wrap currently unsupported modules are welcome. If you are interested in working on one, please comment on the corresponding issue or open a new issue to discuss the API design first.

Core Modules

Plotting

Module Wrapped Issue Notes
basemap ✅ #4239 Figure.basemap
clip ❌ #4751
coast ✅ #4240 Figure.coast
colorbar ✅ #4243 Figure.colorbar
contour ✅ #4537 Figure.contour
events ❌
gmtlogo ✅ #4165 Figure.logo
grd2cpt ✅ #4552 pygmt.grd2cpt
grdcontour ✅ #4538 Figure.grdcontour
grdimage ✅ #4539 Figure.grdimage
grdview ✅ #4208 Figure.grdview
histogram ✅ #4251 Figure.histogram
image ✅ #4263 Figure.image
inset ✅ #4250 Figure.inset
legend ✅ #4249 Figure.legend
mask ❌ #4751
makecpt ✅ #4560 pygmt.makecpt
plot ✅ #4545 Figure.plot
plot3d ✅ #4545 Figure.plot3d
psconvert ✅ #4563 Figure.psconvert
rose ✅ #4540 Figure.rose
solar ✅ #4110 Figure.solar
subplot ✅ #4245 Figure.subplot
ternary ✅ #4541 Figure.ternary
text ✅ #4544 Figure.text
wiggle ✅ #4543 Figure.wiggle

Table processing

Module Wrapped Issue Notes
blockmean ✅ #4549 pygmt.blockmean
blockmedian ✅ #4549 pygmt.blockmedian
blockmode ✅ #4549 pygmt.blockmode
filter1d ✅ #4551 pygmt.filter1d
fitcircle ❌
gmt2kml ❌
gmtbinstats ✅ #1651 pygmt.binstats
gmtconnect ❌
gmtconvert ❌
gmtinfo ✅ #4559 pygmt.info
gmtmath ❌
gmtregress ❌
gmtselect ✅ #4564 pygmt.select
gmtsimplify ❌
gmtspatial ❌
gmtsplit ❌
gmtvector ❌
kml2gmt ❌
mapproject ❌ #4209
project ✅ #4562 pygmt.project
sample1d ❌
spectrum1d ❌
trend1d ❌
trend2d ❌

Grid processing

Module Wrapped Issue Notes
dimfilter ✅ #4550 pygmt.dimfilter
grd2kml ❌
grd2xyz ✅ #4553 pygmt.grd2xyz
grdblend ❌
grdclip ✅ #3882 pygmt.grdclip
grdconvert ❌
grdcut ✅ #4554 pygmt.grdcut
grdedit ❌
grdfft ❌
grdfill ✅ #3768 pygmt.grdfill
grdfilter ✅ #4252 pygmt.grdfilter
grdgdal ❌
grdgradient ✅ #4253 pygmt.grdgradient
grdhisteq ✅ #4572 pygmt.grdhisteq
grdinfo ✅ #4555 pygmt.grdinfo
grdinterpolate ❌
grdlandmask ✅ #4433 pygmt.grdlandmask
grdmask ✅ #4427 pygmt.grdmask
grdmath ❌
grdmix ❌
grdpaste ✅ #4395 pygmt.grdpaste
grdproject ✅ #4556 pygmt.grdproject
grdsample ✅ #4416 pygmt.grdsample
grdselect ❌
grdtrack ✅ #4557 pygmt.grdtrack
grdtrend ❌
grdvector ❌
grdvolume ✅ #4558 pygmt.grdvolume
greenspline ❌
nearneighbor ✅ #4561 pygmt.nearneighbor
sph2grd ✅ #4565 pygmt.sph2grd
sphdistance ✅ #4566 pygmt.sphdistance
sphinterpolate ✅ #4567 pygmt.sphinterpolate
sphtriangulate ❌
surface ✅ #4568 pygmt.surface
triangulate ✅ #4569 pygmt.triangulate
xyz2grd ✅ #2852 pygmt.xyz2grd

Miscellaneous

Module Wrapped Issue Notes
batch ❌
begin ✅ #4574
clear ❌
docs ❌
end ✅ #4574
figure ✅
gmtdefaults ❌
gmtget ❌
gmtread ❌
gmtset ✅ #4573 pygmt.config
gmtwhich ✅ #3003 pygmt.which
gmtwrite ❌
movie ❌

Supplementary Modules

Geodesy

Module Wrapped Issue Notes
earthtide ❌
gpsgridder ❌
velo ✅ #4542 Figure.velo

GSFML

Module Wrapped Issue Notes
fzanalyzer ❌
fzblender ❌
mlconverter ❌

GSHHG

Module Wrapped Issue Notes
gshhg ❌

IMG

Module Wrapped Issue Notes
img2grd ❌

MGD77

Module Wrapped Issue Notes
mgd77convert ❌
mgd77header ❌
mgd77info ❌
mgd77list ❌
mgd77magref ❌
mgd77manage ❌
mgd77path ❌
mgd77sniffer ❌
mgd77track ❌

potential

Module Wrapped Issue Notes
gmtflexure ❌
gmtgravmag3d ❌
grdflexure ❌
grdgravmag3d ❌
grdredpol ❌
grdseamount ❌
gravfft ❌
gravprisms ❌
talwani2d ❌
talwani3d ❌

SEGY

Module Wrapped Issue Notes
segy2grd ❌
segy ❌
segyz ❌

seis

Module Wrapped Issue Notes
coupe ❌
gmtisf ❌
grdshake ❌
grdvs30 ❌
meca ✅ #3829 Figure.meca
polar ❌
sac ❌ #4853 Figure.sac

spotter

Module Wrapped Issue Notes
backtracker ❌
gmtpmodeler ❌
grdpmodeler ❌
grdrotater ❌
grdspotter ❌
hotspotter ❌
originater ❌
polespotter ❌
rotconverter ❌
rotsmoother ❌

windbarbs

Module Wrapped Issue Notes
barb ❌
grdbarb ❌

x2sys

Module Wrapped Issue Notes
x2sys_binlist ❌
x2sys_cross ✅ #4060 pygmt.x2sys_cross
x2sys_datalist ❌
x2sys_get ❌
x2sys_init ✅ #4570 pygmt.x2sys_init
x2sys_list ❌
x2sys_merge ❌
x2sys_put ❌
x2sys_report ❌
x2sys_solve ❌

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions