PlotReconstruction

PlotReconstruction is a class that can be used to generate plots of global plate reconstructions.

class plato.plot.PlotReconstruction(plate_torques=None, settings=None, reconstruction=None, plates=None, slabs=None, points=None, grids=None, globe=None, coastline_file=None)[source]

Bases: object

A class to make standardised plots of reconstructions.

Parameters:
  • settings (Settings) – settings object

  • plates (Plates) – plates object

  • slabs (Slabs) – slabs object

  • points (Points) – points object

  • grids (Grids) – grids object

  • globe (Globe) – globe object

  • plate_torques – plate torques object

plot_seafloor_age_map(ax, age, cmap='cmc.lajolla_r', vmin=0, vmax=250, alpha=1, log_scale=False, coastlines_facecolour='lightgrey', coastlines_edgecolour='lightgrey', coastlines_linewidth=0, plate_boundaries_linewidth=1)[source]

Function to create subplot of the reconstruction with global seafloor age.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

Returns:

image object

Return type:

matplotlib.image.AxesImage

NOTE: This function does need a “case” argument because all cases use the same seafloor age grid.

plot_sediment_map(ax, age, case, cmap='cmc.imola', vmin=1.0, vmax=10000.0, log_scale=True, coastlines_facecolour='lightgrey', coastlines_edgecolour='lightgrey', coastlines_linewidth=0, plate_boundaries_linewidth=1, marker_size=20)[source]

Function to create subplot of the reconstruction with global sediment thicknesses. Seafloor sediments are plotted as the grid stored in the sediment grid with the key corresponding to the ‘Sample sediment grid’ option for the given case. Active margin sediments are plotted as scatter points if the ‘Active margin sediments’ option is activated.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case (str) – case for which to plot the sediments

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

  • marker_size (int, float) – size of the markers

Returns:

image object and scatter object

Return type:

matplotlib.image.AxesImage and matplotlib.collections.PathCollection

plot_erosion_rate_map(ax, age=None, case=None, cmap='cmc.davos_r', vmin=0, vmax=1000000.0, log_scale=True, coastlines_facecolour='none', coastlines_edgecolour='none', coastlines_linewidth=0, plate_boundaries_linewidth=1)[source]

Function to create subplot of the reconstruction with global erosion rates. Erosion rates are plotted as the grid stored in the continent grid with the key corresponding to the ‘Sample erosion rate’ option.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case (str) – case for which to plot the sediments

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

Returns:

image object

Return type:

matplotlib.image.AxesImage

plot_LAB_depth_map(ax, age=None, case=None, cmap='cmc.davos_r', vmin=0, vmax=250.0, log_scale=False, coastlines_facecolour='none', coastlines_edgecolour='none', coastlines_linewidth=0, plate_boundaries_linewidth=1)[source]

Function to create subplot of the reconstruction with continental lithosphere-asthenosphere boundary (LAB) depths in km. Erosion rates are plotted as the grid stored in the continent grid with the key corresponding to the ‘Sample erosion rate’ option.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case (str) – case for which to plot the sediments

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • log_scale (bool) – whether or not to use log scale (default is False)

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

Returns:

image object

Return type:

matplotlib.image.AxesImage

plot_velocity_map(ax, age, case=None, velocity_component='velocity_mag', plateIDs=None, cmap='cmc.bilbao_r', vmin=0, vmax=25, normalise_vectors=False, log_scale=False, coastlines_facecolour='none', coastlines_edgecolour='black', coastlines_linewidth=0.1, plate_boundaries_linewidth=1, vector_width=0.004, vector_scale=300.0, vector_scale_units='width', vector_color='k', vector_alpha=0.5, NET_ROTATION_POLE=False)[source]

Function to create subplot of the reconstruction with global plate velocities. The plate velocities are plotted by the combination of a grid showing the magnitude of a velocity component and a set of vectors showing the direction of the velocity. The velocity component can be either the magnitude of the translational component (i.e. the velocity magnitude) or one of the two components of the velocity vector (i.e. the latitude or longitude component) or the rotational component (i.e. the spin rate).

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case (str) – case for which to use the velocities

  • velocity_component (str) – velocity component to plot

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • normalise_vectors (bool) – whether or not to normalise the vectors

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

Returns:

image object and quiver object

Return type:

matplotlib.image.AxesImage and matplotlib.quiver.Quiver

plot_velocity_difference_map(ax, age, case1, case2, velocity_component='velocity_mag', plateIDs=None, cmap='cmc.vik', vmin=-10, vmax=10, normalise_vectors=False, log_scale=False, coastlines_facecolour='none', coastlines_edgecolour='black', coastlines_linewidth=0.1, plate_boundaries_linewidth=1, vector_width=0.004, vector_scale=300.0, vector_color='k', vector_alpha=0.5)[source]

Function to create subplot of the reconstruction with the difference in global plate velocities for two cases. The difference in plate velocities is plotted by subtracting the velocity vectors of case 2 from the velocity vectors of case 1. The plate velocities are plotted by the combination of a grid showing the magnitude of a velocity component and a set of vectors showing the direction of the velocity. The velocity component can be either the magnitude of the translational component (i.e. the velocity magnitude) or one of the two components of the velocity vector (i.e. the latitude or longitude component) or the rotational component (i.e. the spin rate).

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case1 (str) – case for which to use the velocities

  • case2 (str) – case for which to use the velocities

  • velocity_component (str) – velocity component to plot

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • normalise_vectors (bool) – whether or not to normalise the vectors

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

  • vector_width (int, float) – width of the vectors

  • vector_scale (int, float) – scale of the vectors

  • vector_color (str) – color of the vectors

  • vector_alpha (int, float) – alpha of the vectors

Returns:

image object and quiver object

Return type:

matplotlib.image.AxesImage and matplotlib.quiver.Quiver

plot_relative_velocity_difference_map(ax, age, case1, case2, velocity_component='velocity_mag', plateIDs=None, cmap='cmc.cork', vmin=0.1, vmax=10.0, log_scale=True, coastlines_facecolour='none', coastlines_edgecolour='black', coastlines_linewidth=0.1, plate_boundaries_linewidth=1, vector_width=0.004, vector_scale=300.0, vector_color='k', vector_alpha=0.5)[source]

Function to create subplot of the reconstruction with the relative difference in global plate velocities for two cases. The difference in plate velocities is plotted by dividing the velocity vectors of case 2 from the velocity vectors of case 1. The plate velocities are plotted by the combination of a grid showing the magnitude of a velocity component and a set of vectors showing the direction of the velocity. The velocity component can be either the magnitude of the translational component (i.e. the velocity magnitude) or one of the two components of the velocity vector (i.e. the latitude or longitude component) or the rotational component (i.e. the spin rate).

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case1 (str) – case for which to use the velocities

  • case2 (str) – case for which to use the velocities

  • velocity_component (str) – velocity component to plot

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • normalise_vectors (bool) – whether or not to normalise the vectors

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

Vector_width:

width of the vectors

Vector_scale:

scale of the vectors

Vector_color:

color of the vectors

Vector_alpha:

transparency of the vectors

Returns:

image object and quiver object

Return type:

matplotlib.image.AxesImage and matplotlib.quiver.Quiver

plot_torques_map(ax, age, case=None, cmap='cmc.lajolla_r', vmin=0, vmax=250, alpha=0.5, log_scale=False, normalise_vectors=False, coastlines_facecolour='lightgrey', coastlines_edgecolour='lightgrey', coastlines_linewidth=0, plate_boundaries_linewidth=1, vector_width=0.008, vector_scale=4.5e+27, vector_scale_units='width', vector_cmap='cmc.glasgow_r', vector_linewidth=0.5, vector_edgecolour='k', minimum_plate_area=None, plateIDs=None)[source]

Function to create subplot of the reconstruction with the torques acting on the plates.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case (str) – case for which to use the velocities

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • alpha (int, float) – transparency of the colormap

  • log_scale (bool) – whether or not to use log scale

  • normalise_vectors (bool) – whether or not to normalise magnitude of torque vector by the magnitude of the driving torque

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

  • vector_width (int, float) – width of the vectors

  • vector_scale (int, float) – scale of the vectors

  • vector_scale_units (str) – units of the vector scale

  • vector_cmap (str) – colormap for the vectors

  • vector_linewidth (int, float) – linewidth of the vectors

  • vector_edgecolour (str) – edgecolour of the vectors

  • minimum_plate_area (int, float) – minimum area for the plates

  • plateIDs (int, float, list) – list of plate IDs to plot

Returns:

image object and quiver object

Return type:

matplotlib.image.AxesImage and matplotlib.quiver.Quiver

plot_residual_force_map(ax, age, case=None, type='slabs', trench_means=False, cmap='cmc.lipari_r', vmin=0.01, vmax=0.1, normalise_data=True, normalise_vectors=True, log_scale=True, marker_size=30, coastlines_facecolour='lightgrey', coastlines_edgecolour='lightgrey', coastlines_linewidth=0, plate_boundaries_linewidth=1, slab_vector_width=0.002, slab_vector_scale=300.0, slab_vector_colour='k', slab_vector_alpha=1, plate_vector_width=0.005, plate_vector_scale=300.0, plate_vector_facecolour='white', plate_vector_edgecolour='k', plate_vector_linewidth=1, plate_vector_alpha=1)[source]

Function to create subplot of the reconstruction with the residual force acting on the plates. The residual force is displayed as a vector component (latitudinal, longitudinal, or magnitude), which can be plotted as a grid of the force acting on the points or as scatter points showing the force acting on the slabs.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • age (int) – the age for which to display the map

  • case1 (str) – case for which to use the velocities

  • case2 (str) – case for which to use the velocities

  • velocity_component (str) – velocity component to plot

  • cmap (str) – colormap to use

  • vmin (int, float) – minimum value for colormap

  • vmax (int, float) – maximum value for colormap

  • normalise_vectors (bool) – whether or not to normalise the vectors

  • log_scale (bool) – whether or not to use log scale

  • coastlines_facecolour (str) – facecolour for coastlines

  • coastlines_edgecolour (str) – edgecolour for coastlines

  • coastlines_linewidth (int, float) – linewidth for coastlines

  • plate_boundaries_linewidth (int, float) – linewidth for plate boundaries

  • slab_vector_width (int, float) – width of the slab vectors

  • slab_vector_scale (int, float) – scale of the slab vectors

  • slab_vector_colour (str) – colour of the slab vectors

  • slab_vector_alpha (int, float) – transparency of the slab vectors

  • plate_vector_width (int, float) – width of the plate vectors

  • plate_vector_scale (int, float) – scale of the plate vectors

  • plate_vector_facecolour (str) – facecolour of the plate vectors

  • plate_vector_edgecolour (str) – edgecolour of the plate vectors

  • plate_vector_linewidth (int, float) – linewidth of the plate vectors

  • plate_vector_alpha (int, float) – transparency of the plate vectors

Returns:

image object and quiver object

Return type:

matplotlib.image.AxesImage and matplotlib.quiver.Quiver

plot_basemap(ax)[source]

Function to plot a basemap on an axes object.

Parameters:

ax (matplotlib.axes.Axes) – axes object

Returns:

gridlines object

Return type:

cartopy.mpl.gridliner.Gridliner

plot_grid(ax, grid, log_scale=False, vmin=0, vmax=1000.0, cmap='viridis', alpha=1)[source]

Function to plot a grid.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • data (numpy.ndarray) – data to plot

  • log_scale (bool) – whether or not to use log scale

  • vmin (float) – minimum value for colormap

  • vmax (float) – maximum value for colormap

  • cmap (str) – colormap to use

Returns:

image object

Return type:

matplotlib.image.AxesImage

plot_vectors(ax, lat, lon, vector_lat, vector_lon, vector_mag=None, normalise_vectors=False, width=0.004, scale=300.0, scale_units='width', facecolour='k', edgecolour='none', linewidth=1, alpha=0.5, zorder=4)[source]

Function to plot vectors on an axes object.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • lat (numpy.ndarray) – latitude of the vectors

  • lon (numpy.ndarray) – longitude of the vectors

  • vector_lat (numpy.ndarray) – latitude component of the vectors

  • vector_lon (numpy.ndarray) – longitude component of the vectors

  • vector_mag (numpy.ndarray) – magnitude of the vectors

  • normalise_vectors (bool) – whether or not to normalise the vectors

  • width (float) – width of the vectors

  • scale (float) – scale of the vectors

  • zorder (int) – zorder of the vectors

  • color (str) – color of the vectors

  • alpha (float) – transparency of the vectors

Returns:

quiver object

Return type:

matplotlib.quiver.Quiver

plot_reconstruction(ax, age, coastlines_facecolour='none', coastlines_edgecolour='none', coastlines_linewidth='none', plate_boundaries_linewidth='none')[source]

Function to plot reconstructed features: coastlines, plates and trenches.

Parameters:
  • ax (matplotlib.axes.Axes) – axes object

  • _age (int) – the time for which to display the map

  • plotting_options (dict) – options for plotting

  • coastlines (boolean) – whether or not to plot coastlines

  • plates (boolean) – whether or not to plot plates

  • trenches (boolean) – whether or not to plot trenches

  • default_frame (boolean) – whether or not to use the default reconstruction

Returns:

axes object with plotted features

Return type:

matplotlib.axes.Axes