pygmt.Figure

class pygmt.Figure[source]

A GMT figure to handle all plotting.

Use the plotting methods of this class to add elements to the figure. You can preview the figure using pygmt.Figure.show and save the figure to a file using pygmt.Figure.savefig.

Examples

>>> import pygmt
>>> fig = pygmt.Figure()
>>> fig.basemap(region=[0, 360, -90, 90], projection="W15c", frame=True)
>>> fig.savefig("my-figure.png")
>>> # Make sure the figure file is generated and clean it up
>>> from pathlib import Path
>>> assert Path("my-figure.png").exists()
>>> Path("my-figure.png").unlink()

The plot region can be specified through ISO country codes (for example, "JP" for Japan):

>>> import pygmt
>>> fig = pygmt.Figure()
>>> fig.basemap(region="JP", projection="M7c", frame=True)
>>> # The fig.region attribute shows the WESN bounding box for the figure
>>> print(", ".join(f"{i:.2f}" for i in fig.region))
122.94, 145.82, 20.53, 45.52

Attributes

property Figure.region: ndarray

The geographic WESN bounding box for the current figure.

Methods Summary

Figure.basemap(*[, region, projection, ...])

Plot base maps and frames for the figure.

Figure.coast(*[, area_thresh, frame, lakes, ...])

Plot continents, shorelines, rivers, and borders on maps.

Figure.colorbar(*[, frame, cmap, position, ...])

Plot colorbars on figures.

Figure.contour([data, x, y, z, annotation, ...])

Contour table data by direct triangulation.

Figure.grdcontour(grid, *[, annotation, ...])

Convert grids or images to contours and plot them on maps.

Figure.grdimage(grid, *[, frame, cmap, ...])

Project and plot grids or images.

Figure.grdview(grid, *[, region, ...])

Create 3-D perspective image or surface mesh from a grid.

Figure.histogram(data, *[, horizontal, ...])

Plot Cartesian histograms.

Figure.hlines(y[, xmin, xmax, pen, label, ...])

Plot one or multiple horizontal line(s).

Figure.image(imagefile, *[, position, box, ...])

Place images or EPS files on maps.

Figure.inset(*[, position, box, projection, ...])

Create an inset figure to be placed within a larger figure.

Figure.legend([spec, position, box])

Plot legends on maps.

Figure.logo(*[, region, projection, ...])

Plot the GMT logo.

Figure.meca(spec, scale[, convention, ...])

Plot focal mechanisms.

Figure.plot([data, x, y, size, symbol, ...])

Plot lines, polygons, and symbols in 2-D.

Figure.plot3d([data, x, y, z, size, symbol, ...])

Plot lines, polygons, and symbols in 3-D.

Figure.psconvert(*[, crop, gs_option, dpi, ...])

Convert [E]PS file(s) to other formats.

Figure.rose([data, length, azimuth, sector, ...])

Plot windrose diagrams or polar histograms.

Figure.savefig(fname[, transparent, crop, ...])

Save the figure to an image file.

Figure.set_panel([panel, fixedlabel, ...])

Set the current subplot panel to plot on.

Figure.shift_origin([xshift, yshift])

Shift plot origin in x and/or y directions.

Figure.show([method, dpi, width, waiting])

Display a preview of the figure.

Figure.solar([terminator, terminator_datetime])

Plot day-light terminators or twilights.

Figure.subplot([nrows, ncols, figsize, ...])

Create multi-panel subplot figures.

Figure.ternary(data[, alabel, blabel, clabel])

Plot ternary diagrams.

Figure.text([textfiles, x, y, position, ...])

Plot or typeset text strings of variable size, font type, and orientation.

Figure.tilemap(region[, zoom, source, ...])

Plot an XYZ tile map.

Figure.timestamp([text, label, justify, ...])

Plot the GMT timestamp logo.

Figure.velo([data, vector, frame, cmap, ...])

Plot velocity vectors, crosses, anisotropy bars, and wedges.

Figure.vlines(x[, ymin, ymax, pen, label, ...])

Plot one or multiple vertical line(s).

Figure.wiggle([data, x, y, z, fillpositive, ...])

Plot z=f(x,y) anomalies along tracks.

Examples using pygmt.Figure

Plotting a surface

Plotting a surface

3-D scatter plots

3-D scatter plots

Double Y-axes graph

Double Y-axes graph

Ternary diagram

Ternary diagram

Colorbar

Colorbar

Multiple colormaps

Multiple colormaps

Inset

Inset

Inset map showing a rectangular region

Inset map showing a rectangular region

Legend

Legend

Logo

Logo

Scale bar

Scale bar

Day-night terminator line and twilights

Day-night terminator line and twilights

Timestamp

Timestamp

Blockmean

Blockmean

Histogram

Histogram

Rose diagram

Rose diagram

Scatter plot with histograms

Scatter plot with histograms

Contours

Contours

Cross-section along a transect

Cross-section along a transect

Clipping grid values

Clipping grid values

Calculating grid gradient and radiance

Calculating grid gradient and radiance

Calculating grid gradient with custom azimuth and normalize parameters

Calculating grid gradient with custom azimuth and normalize parameters

Create ‘wet-dry’ mask grid

Create 'wet-dry' mask grid

Images on figures

Images on figures

RGB image

RGB image

Sampling along tracks

Sampling along tracks

Connection lines

Connection lines

Decorated lines

Decorated lines

Envelope

Envelope

Generate points along great circles

Generate points along great circles

Horizontal and vertical lines

Horizontal and vertical lines

Line colors with a custom CPT

Line colors with a custom CPT

Line segment caps and joints

Line segment caps and joints

Line fronts

Line fronts

GeoPandas: Plotting lines with LineString or MultiLineString geometry

GeoPandas: Plotting lines with LineString or MultiLineString geometry

Line styles

Line styles

Quoted lines

Quoted lines

Vector heads and tails

Vector heads and tails

Cartesian, circular, and geographic vectors

Cartesian, circular, and geographic vectors

Wiggle along tracks

Wiggle along tracks

Political boundaries

Political boundaries

Choropleth map

Choropleth map

Highlight country, continent and state polygons

Highlight country, continent and state polygons

Color land and water

Color land and water

Shorelines

Shorelines

Tile maps

Tile maps

Focal mechanisms

Focal mechanisms

Velocity arrows and confidence ellipses

Velocity arrows and confidence ellipses

Vertical or horizontal bars

Vertical or horizontal bars

Basic geometric symbols

Basic geometric symbols

Custom symbols

Custom symbols

Datetime inputs

Datetime inputs

Multi-parameter symbols

Multi-parameter symbols

Bit and hachure patterns

Bit and hachure patterns

Points

Points

Color points by categories

Color points by categories

Points with varying transparency

Points with varying transparency

Scatter plots with a legend

Scatter plots with a legend

Text symbols

Text symbols

1. Making your first figure

1. Making your first figure

2. Create a contour map

2. Create a contour map

3. Figure elements

3. Figure elements

4. PyGMT I/O: Table inputs

4. PyGMT I/O: Table inputs

Azimuthal equidistant projection

Azimuthal equidistant projection

Perspective projection

Perspective projection

General stereographic projection

General stereographic projection

Gnomonic projection

Gnomonic projection

Lambert azimuthal equal-area projection

Lambert azimuthal equal-area projection

Orthographic projection

Orthographic projection

Albers conic equal-area projection

Albers conic equal-area projection

Equidistant conic projection

Equidistant conic projection

Lambert conic conformal projection

Lambert conic conformal projection

Polyconic projection

Polyconic projection

Cassini cylindrical projection

Cassini cylindrical projection

Cylindrical equal-area projection

Cylindrical equal-area projection

Cylindrical equidistant projection

Cylindrical equidistant projection

Mercator projection

Mercator projection

Miller cylindrical projection

Miller cylindrical projection

Oblique Mercator projection

Oblique Mercator projection

Cylindrical stereographic projection

Cylindrical stereographic projection

Transverse Mercator projection

Transverse Mercator projection

Universal Transverse Mercator projection

Universal Transverse Mercator projection

Eckert IV equal-area projection

Eckert IV equal-area projection

Eckert VI equal-area projection

Eckert VI equal-area projection

Hammer projection

Hammer projection

Mollweide projection

Mollweide projection

Robinson projection

Robinson projection

Sinusoidal projection

Sinusoidal projection

Van der Grinten projection

Van der Grinten projection

Winkel Tripel projection

Winkel Tripel projection

Cartesian linear

Cartesian linear

Cartesian logarithmic

Cartesian logarithmic

Cartesian power

Cartesian power

Polar

Polar

Creating a 3-D perspective image

Creating a 3-D perspective image

Cartesian histograms

Cartesian histograms

Configuring PyGMT defaults

Configuring PyGMT defaults

Creating a map with contour lines

Creating a map with contour lines

Plotting datetime charts

Plotting datetime charts

Draping a dataset on top of a topographic surface

Draping a dataset on top of a topographic surface

Plotting Earth relief

Plotting Earth relief

Performing grid histogram equalization

Performing grid histogram equalization

Adding an inset to the figure

Adding an inset to the figure

Creating legends

Creating legends

Typesetting non-ASCII text

Typesetting non-ASCII text

Making subplots

Making subplots

Plotting vectors

Plotting vectors

Interactive data visualization using Panel

Interactive data visualization using Panel

Coastlines and borders

Coastlines and borders

Frames, ticks, titles, and labels

Frames, ticks, titles, and labels

Plotting lines

Plotting lines

Plotting data points

Plotting data points

Plotting polygons

Plotting polygons

Setting the region

Setting the region

Plotting text

Plotting text