aim2dat.plots.surface
¶
Surface energy plots.
Module Contents¶
Classes¶
Plot the surface energy with respect to the chemical potential. |
-
class aim2dat.plots.surface.SurfacePlot(area_unit=
'angstrom'
, energy_unit='eV'
, plot_element=None
, plot_type='chem_potential'
, plot_properties='surface_energy'
, plot_labels=None
, show_x_label=True
, show_y_label=True
, **kwargs)[source]¶ Bases:
aim2dat.plots.base_plot._BasePlot
Plot the surface energy with respect to the chemical potential.
Overview
¶ Unit of the surface area.
used backend library to plot the data. Supported values are
"matplotlib"
andBulk phase.
Alpha value(s) controlling the opacity of plot elements.
Colors used in the plot.
Hatch value(s) controlling the hatch of plot elements.
Line styles used in the plot (This feature is not supported by all plot
Line widths used in the plot (This feature is not supported by all plot
Marker types used in the plot (This feature is not supported by all plot
List of labels for the ticks on the x-axis.
List of values to set ticks on the x-axis.
List of labels for the ticks on the y-axis.
List of values to set ticks on the y-axis.
List of labels for all data sets.
Elemental phases.
Energy unit.
Set equal aspect ratio of the plot(s).
Shift between box and anchor. The default value is
(1, 1)
.Location of the legend. The default value is
1
.Columns of the legend (only supported for the matplotlib backend).
Sort entries of the legend.
Whether to draw a grid in the plot. The default value is
False
.Properties that are plotted on the y-axis.
Plot type. Supported options are ‘chem_potential’ or ‘excess_atoms’.
Length-to-width ratio of the plot given as a tuple of two numbers.
Show colorbar (not supported by all plots).
Whether to draw a grid in the plot. The default value is
False
.Show legend. The default value is
False
.Show plot. The default value is
False
.Path of the folder to store the plot. The default value is
./
.Store plot. The default value is
False
.Custom matplotlib style sheet.
Keyword arguments for the matplotlib
subplots_adjust
function.Align y label of plot. The default value is
False
.Grid spec values.
Vertical spacing between the subplots.
Number of columns. The default value is
1
.Number of rows. The default value is
2
.Use one common colorbar for all subplots.
Merge legend items of all subplots.
Share the x-axis of subplots located in the same column.
Share the y-axis of subplots located in the same row.
Title of the whole figure.
x-label of the whole figure.
y-label of the whole figure.
Tight layout of plot. The default value is
False
.Horizontal spacing between the subplots.
Label of the x-axis. If
None
is given no label will be shown. TheRange of the x-axis. The default value is
None
.Label of the y-axis. If
None
is given no label will be shown. TheRange of the y-axis. The default value is
None
.¶ add_surface_facet
(data_label, formula, total_energy, surface_area, miller_indices, termination_label, area_unit, energy_unit, **kwargs)Add surface.
auto_set_axis_properties
(set_x_label, set_y_label)Whether the axis labels and other axis properties are auto-generated.
create_default_gridspec
(nrows, ncols, nplots, heights, widths, center_last_row)Create default grid for multiple plots.
import_from_pandas_df
(data_label, data_frame, termination_labels, ter_labeling_scheme, extract_electronic_properties)Import surface facets from a results pandas data frame of the workflow builder.
plot
(data_labels, plot_title, plot_name, subplot_assignment)Plot the data sets.
Reset gridspec settings.
Return the labels of all data sets.
set_bulk_phase
(formula, total_energy, unit)Set bulk phase.
set_elemental_phase
(element, total_energy, nr_atoms, unit)Set elemental phase.
- property backend¶
used backend library to plot the data. Supported values are
"matplotlib"
and"plotly"
.- Type:¶
str
- property bulk_phase¶
Bulk phase.
- property custom_alpha¶
Alpha value(s) controlling the opacity of plot elements.
- Type:¶
float, list or tuple
- property custom_hatch¶
Hatch value(s) controlling the hatch of plot elements.
- Type:¶
float, list or tuple
- property custom_linestyles¶
Line styles used in the plot (This feature is not supported by all plot types).
- Type:¶
list or tuple
- property custom_linewidths¶
Line widths used in the plot (This feature is not supported by all plot types).
- Type:¶
list or tuple
- property custom_markers¶
Marker types used in the plot (This feature is not supported by all plot types).
- Type:¶
list or tuple
- property elemental_phases¶
Elemental phases.
- property legend_bbox_to_anchor¶
Shift between box and anchor. The default value is
(1, 1)
.- Type:¶
tuple or list
- property ratio¶
Length-to-width ratio of the plot given as a tuple of two numbers.
- Type:¶
tuple or list
Use one common colorbar for all subplots.
bool
Merge legend items of all subplots.
bool
Share the x-axis of subplots located in the same column.
bool
Share the y-axis of subplots located in the same row.
bool
- property x_label¶
Label of the x-axis. If
None
is given no label will be shown. The default value isNone
.- Type:¶
str or None
- property y_label¶
Label of the y-axis. If
None
is given no label will be shown. The default value isNone
.- Type:¶
str or None
-
add_surface_facet(data_label, formula, total_energy, surface_area, miller_indices=
None
, termination_label=None
, area_unit='angstrom'
, energy_unit='eV'
, **kwargs)[source]¶ Add surface.
- Parameters:¶
data_label (str) – Internal label used to plot and compare multiple data sets.
formula (dict, list or str) – Chemical formula of the surface slab.
total_energy (float) – Total energy of the surface slab.
surface_area (float) – Surface area of the facet.
area_unit (str (optional)) – Unit of the surface area. The default value is
'angstrom'
.energy_unit (str (optional)) – Unit of the energy. The default value is
'eV'
.
-
auto_set_axis_properties(set_x_label=
True
, set_y_label=True
)¶ Whether the axis labels and other axis properties are auto-generated.
- Parameters:¶
set_x_label (bool) – Set x-axis label automatically.
set_y_label (bool) – Set y-axis label automatically.
-
create_default_gridspec(nrows, ncols, nplots, heights=
1
, widths=1
, center_last_row=True
)¶ Create default grid for multiple plots.
- Parameters:¶
nrows (Int) – Number of rows.
ncols (int) – Number columns.
nplots (int) – Number of subplots.
heights (int (optional)) – Height of subplots.
widths (int (optional)) – Width of subplots.
center_last_row (bool (optional)) – Center the plots of the last row.
-
import_from_pandas_df(data_label, data_frame, termination_labels=
None
, ter_labeling_scheme=None
, extract_electronic_properties=False
)[source]¶ Import surface facets from a results pandas data frame of the workflow builder.
- Parameters:¶
data_label (str) – Internal label used to plot and compare multiple data sets.
data_frame (pandas.DataFrame) – Pandas data frame.
termination_labels (list (optional)) – List of termination indicies. If set to
None
the termination index for each facet is extracted from the input SurfaceData of the workflow.ter_labeling_scheme (str (optional)) – Automatic labeling for surface slabs.
extract_electronic_properties (bool (optional)) – Whether to extract the band gap and the ionization potential from the calculated band structure.
-
plot(data_labels, plot_title=
None
, plot_name='plot.png'
, subplot_assignment=None
)¶ Plot the data sets.
- Parameters:¶
data_labels (list or str) – List of data labels of the data sets that are plotted or in case only one data set is plotted a string.
plot_title (list or str (optional)) – Title of the plots or subplots.
plot_name (str (optional)) – The file name of the plot.
subplot_assignment (list or None (optional)) – Assignment of the data sets to individual subplots.
- Returns:¶
fig (matplotlib.pyplot.figure or plotly.graph_objects.Figure) – Figure object of the plot.
- reset_gridspec()¶
Reset gridspec settings.
- return_data_labels()¶
Return the labels of all data sets.
- Returns:¶
data_labels (list) – List of the labels of all data sets.
-
set_bulk_phase(formula, total_energy, unit=
'eV'
)[source]¶ Set bulk phase.
- Parameters:¶
formula (dict, list or str) – Chemical formula of the bulk phase.
total_energy (float) – Total energy of the phase.
unit (str (optional)) – Unit of the energy. The default value is
'eV'
.
-
set_elemental_phase(element, total_energy, nr_atoms=
1
, unit='eV'
)[source]¶ Set elemental phase.
- Parameters:¶
element (str, int) – Name, symbol or atomic number of the element.
total_energy (float) – Total energy of the phase.
nr_atoms (int (optional)) – Number of atoms of the phase. The default value is
1
.unit (str (optional)) – Unit of the energy. The default value is
'eV'
.