gemseo / post / dataset

Hide inherited members

zvsxy module

Draw a variable versus two others from a Dataset.

A ZvsXY plot represents the variable \(z\) with respect to \(x\) and \(y\) as a surface plot, based on a set of points :points \(\{x_i,y_i,z_i\}_{1\leq i \leq n}\). This interpolation relies on the Delaunay triangulation of \(\{x_i,y_i\}_{1\leq i \leq n}\)

class gemseo.post.dataset.zvsxy.ZvsXY(dataset, x, y, z, add_points=False, fill=True, levels=None, other_datasets=None)[source]

Bases: DatasetPlot

Plot surface z versus x,y.

Parameters:
  • dataset (Dataset) – The dataset containing the data to plot.

  • x (VariableType) – The name of the variable on the x-axis, with its optional component if not 0, e.g. ("foo", 3) for the fourth component of the variable "foo".

  • y (VariableType) – The name of the variable on the y-axis, with its optional component if not 0, e.g. ("bar", 3) for the fourth component of the variable "bar".

  • z (VariableType) – The name of the variable on the z-axis, with its optional component if not 0, e.g. ("baz", 3) for the fourth component of the variable "baz".

  • add_points (bool) –

    Whether to display the entries of the dataset as points above the surface.

    By default it is set to False.

  • fill (bool) –

    Whether to generate a filled contour plot.

    By default it is set to True.

  • levels (int | Sequence[int] | None) – Either the number of contour lines or the values of the contour lines in increasing order. If None, select them automatically.

  • other_datasets (Iterable[Dataset] | None) – Additional datasets to be plotted as points above the surface.

Raises:

ValueError – If the dataset is empty.

class PlotEngine(value)

Bases: StrEnum

An engine of plots.

MATPLOTLIB = 'MatplotlibPlotFactory'
PLOTLY = 'PlotlyPlotFactory'
execute(save=True, show=False, file_path='', directory_path='', file_name='', file_format='png', file_name_suffix='', **engine_parameters)

Execute the post-processing.

Parameters:
  • save (bool) –

    Whether to save the plot.

    By default it is set to True.

  • show (bool) –

    Whether to display the plot.

    By default it is set to False.

  • file_path (str | Path) –

    The path of the file to save the figures. If empty, create a file path from directory_path, file_name and file_format.

    By default it is set to “”.

  • directory_path (str | Path) –

    The path of the directory to save the figures. If empty, use the current working directory.

    By default it is set to “”.

  • file_name (str) –

    The name of the file to save the figures. If empty, use a default one generated by the post-processing.

    By default it is set to “”.

  • file_format (str) –

    A file format, e.g. ‘png’, ‘pdf’, ‘svg’, …

    By default it is set to “png”.

  • file_name_suffix (str) –

    The suffix to be added to the file name.

    By default it is set to “”.

  • **engine_parameters (Any) – The parameters specific to the plot engine.

Returns:

The figures.

Return type:

list[BasePlot]

DEFAULT_PLOT_ENGINE: ClassVar[PlotEngine] = 'MatplotlibPlotFactory'

The default engine of plots.

FILE_FORMATS_TO_PLOT_ENGINES: ClassVar[dict[str, PlotEngine]] = {'html': PlotEngine.PLOTLY}

The file formats bound to the engines of plots.

The method execute() uses this dictionary to select the engine of plots associated with its file_format argument. If missing, the method uses the DEFAULT_PLOT_ENGINE.

property color: str | list[str]

The color.

Either a global one or one per item if n_items is non-zero. If empty, use a default one.

property colormap: str

The color map.

property dataset: Dataset

The dataset.

property fig_size: FigSizeType

The figure size.

property fig_size_x: float

The x-component of figure size.

property fig_size_y: float

The y-component of figure size.

property figures: list[BasePlot]

The figures.

property font_size: int

The font size.

property grid: bool

Whether to add a grid.

property labels: Mapping[str, str]

The labels for the variables.

property legend_location: str

The location of the legend.

property linestyle: str | Sequence[str]

The line style.

Either a global one or one per item if n_items is non-zero. If empty, use a default one.

property marker: str | Sequence[str]

The marker.

Either a global one or one per item if n_items is non-zero. If empty, use a default one.

property output_files: list[str]

The paths to the output files.

property rmax: float | None

The maximum value on the r-axis; if None, compute it from data.

property rmin: float | None

The minimum value on the r-axis; if None, compute it from data.

property title: str

The title of the plot.

property xlabel: str

The label for the x-axis.

property xmax: float | None

The maximum value on the x-axis; if None, compute it from data.

property xmin: float | None

The minimum value on the x-axis; if None, compute it from data.

property xtick_rotation: float

The rotation angle in degrees for the x-ticks.

property ylabel: str

The label for the y-axis.

property ymax: float | None

The maximum value on the y-axis; if None, compute it from data.

property ymin: float | None

The minimum value on the y-axis; if None, compute it from data.

property zlabel: str

The label for the z-axis.

property zmax: float | None

The maximum value on the z-axis; if None, compute it from data.

property zmin: float | None

The minimum value on the z-axis; if None, compute it from data.

Examples using ZvsXY

Rosenbrock dataset

Rosenbrock dataset

ZvsXY

ZvsXY