gemseo_pymoo / post

Show inherited members

scatter_pareto module

Scatter plot for multi-objective optimization problems.

class gemseo_pymoo.post.scatter_pareto.ScatterPareto(opt_problem)[source]

Bases: OptPostProcessor

Scatter plot with pareto points and points of interest.

See Scatter.

Note

This post-processor assumes the optimization has converged to a well-defined pareto front.

Parameters:

opt_problem (OptimizationProblem) – The optimization problem to be post-processed.

Raises:

ValueError – If the JSON grammar file for the options of the post-processor does not exist.

database: Database

The database generated by the optimization problem.

fig_name_prefix: str = 'scatter'

The figure’s name prefix.

fig_title: str = 'Pareto'

The figure’s title.

font_size: int = 9

The font size for the plot texts.

materials_for_plotting: dict[Any, Any]

The materials to eventually rebuild the plot in another framework.

opt_problem: OptimizationProblem

The optimization problem.

prop_annotation: ClassVar[PlotPropertiesType] = {'fontsize': 7, 'ha': 'center', 'rotation_mode': 'anchor', 'transform_rotates_text': True, 'va': 'bottom'}

The properties for the annotations.

prop_arrow: ClassVar[PlotPropertiesType] = {'alpha': 0.5, 'arrowstyle': '-|>', 'color': 'black', 'mutation_scale': 12}

The properties for the arrows.

prop_extra: ClassVar[PlotPropertiesType] = {'alpha': 0.8, 's': 30, 'zorder': 2}

The properties for the extra points.

prop_front: ClassVar[PlotPropertiesType] = {'alpha': 0.2, 'color': 'blue', 's': 10, 'zorder': 1}

The properties for the pareto points.

prop_interest: ClassVar[PlotPropertiesType] = {'alpha': 1.0, 's': 30, 'zorder': 3}

The properties for the points of interest.