GMT tutorial for beginners (codes included)
The Generic Mapping Tools is widely used across Earth and Planetary and other fields of studies to process data and generate high-quality illustrations. This post is the first introduction to beginners for getting started in GMT.
The Generic Mapping Tools is widely used across Earth and Planetary and other fields of studies to process data and generate high quality illustrations. This post is first introduction to beginners for getting started in GMT.
Please note that recently GMT version 6 has been released but this post is focussed on GMT version 5. For readers interested in GMT 6, I recommend beginners to get started with pyGMT.
How to install GMT
sudo apt-get install gmt gmt-dcw gmt-gshhg
brew install gmt
For other operating systems, check GMT website
Easiest way to install GMT
Install GMT 6.1.1 in a Pythonic way using anaconda.
Below is a list of examples, originally inspired from the GMT documentation. For successfully running the codes, the user need to fulfill following requirements:
- Pre-installed GMT-5, check by typing
- Pre-installed netcdf-5, check by typing
- Pre-installed ghostview package, check by typing
ETOPO1_Bed_g_gmt4.grdin the Data directory from the NOAA website.
PyGMT: High-Resolution Topographic Map in Python
If you prefer using Python for most of your scripting, then you should look into the PyGMT that is an implementation of GMT-6 in Python
Readers can download the package containing all the following examples from here. The package consists of three directories: Data, Scripts and Figures.
- The Data directory contains the data files required to run the scripts in the Scripts directory.
- The Scripts directory consists of all the bash scripts for all the later examples.
- The Figures directory consists of all the example plots from 1-24.
This script contains commands for making basemap for linear projections including the log-log plot. It also explains how to add title, xlabel, ylabel, tick-marks, background-color to the plot.
Plotting maps with different projections
This example explains how to plot the Mercator projection, Alber’s projection, Orthographic projection, Eckert projection.
Plotting lines and symbols
This example explains the use of
psxy command to plot the lines and symbols. It also contains the commands to plot the earthquake epicenter with colors representing depths and symbol size representing magnitude.
Customizing plots with texts
This example explains how to type texts onto the plots. The user can even type mathematical equations.
Contour lines in GMT
This bash example explains how to plot the contour lines using the command
grdcontour. It also explains how to cut the large data set using the
grdcut command and obtain the information about it using the
grdinfo. It also explains how to do interpolation of data (nearest neighbour and spline).
Colorbars and colorscales
This example contains the description of how to make the cpt files, and plot the colorbars using
psscale command. It also explains plotting the relief data.
Plotting NetCDF data in GMT
This example shows how to plot the multidimensional netcdf data in GMT.
Three dimensional plots: Mesh and Surface plots
This examples script includes how to plot the data as 3D plots using two methods: mesh plot, color-coded surface.
Disclaimer of liability
The information provided by the Earth Inversion is made available for educational purposes only.
Whilst we endeavor to keep the information up-to-date and correct. Earth Inversion makes no representations or warranties of any kind, express or implied about the completeness, accuracy, reliability, suitability or availability with respect to the website or the information, products, services or related graphics content on the website for any purpose.
UNDER NO CIRCUMSTANCE SHALL WE HAVE ANY LIABILITY TO YOU FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF THE SITE OR RELIANCE ON ANY INFORMATION PROVIDED ON THE SITE. ANY RELIANCE YOU PLACED ON SUCH MATERIAL IS THEREFORE STRICTLY AT YOUR OWN RISK.
Leave a comment