wiki:gmt_docu

GMT python wrappers

While there are ​other, more sophisticated python interfaces for the ​Generic Mapping Tools (GMT) around, we found it simplest to write our own, script based interface. The hc and larry modules, as well as the SEATREE GUI use the​gmtPlotter class for geographic plots. gmtPlotter.py implements a very simple wrapper approach that issues command-line calls which can be echoed to the shell.

A simple python example for how to use t​gmtPlotter to make a PNG plot showing global land outlines and plate boundaries is

import sys, os
from gmtPlotter import *        # get the gmtPlotter class
verbose=3                       # verbosity
#
# get a plotter instance
#
myPlotter = GMTPlotter(verbose,"","/tmp/","","")
#
# set the projection
#
myPlotter.setMapProjection(GMTProjection("H",180,"",7,""))
#
# set the region
#
myPlotter.setPlotRange(0, 360, -90, 90)
#
# coast line settings
myPlotter.setCoastlineResolution("l")
myPlotter.setCoastlineMaskArea(8000)
#
#
myPlotter.setAnnotation("g60/g30")

#
# PS output
#
outfile="out.ps"                # output file
#
# create the plot
myPlotter.initPSFile(outfile)
myPlotter.drawCoastline(solid=12) # draw land mass and coast lines
myPlotter.drawPlateBoundaries()
myPlotter.closePSFile()
# done

Note that neither SEATREE nor the ​gmtPlotter class make full use of ​GMT's capabilities. If you are merely interested in mapping, you might wish to check the ​iGMT web page. iGMT is a Tcl/Tk? GUI interface for GMT script generation.

Last modified 10 years ago Last modified on 01/02/08 11:22:23