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:
- 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