An interface for interoperability between the Generic Mapping Tools (GMT), a tool used by geophysicists to create research-quality figures, and Matlab has recently been developed that allows GMT users to interact with Matlab and Matlab users to make use of GMT.
GMT wrappers are currently also being developed for the Python programming language, particularly to be used in the IPython/Jupyter notebook due to an initiative by Leonardo Uieda (and his professor Paul Wessel) whose Postdoc is being funded by the NSF. You can watch his talk at the SciPy 2017 conference below.
Some of the mentioned advantages to which I attest include:
- Begin and End statements are introduced to eliminate the need to pipe postscript results into a file in each line of code being written. This also eliminates the need to use the -K and -O flags which keep the file open and updates it, respectively. The -K and -O flags are a major confusion for newcomers to GMT.
- temporary files are created under the /tmp directory, in Linux, so they will automatically be cleaned once the jupyter notebook is closed or the operating system is rebooted. Moreover, every project will have its own directory so files from different projects don’t get mixed up.
- GMT documentation straight in the Jupyter notebook
- Matplotlib- & Basemap-like behaviour, particularly inline viewing of figures, using gmt.show()
- Pythonic aliases make the compact GMT flags
To contribute: github.com/GenericMappingTools
Reference
Cook, T. (2017), A powerful new tool for research, Eos, 98, https://doi.org/10.1029/2017EO077489. Published on 17 July 2017.