SummaryTableVisualization#

class openstef_beam.analysis.visualizations.SummaryTableVisualization(**data: Any) None[source]

Bases: VisualizationProvider

Creates HTML tables summarizing evaluation metrics.

Generates sortable HTML tables presenting evaluation metrics organized by quantiles, targets, and model runs. Tables automatically aggregate statistics and provide formatted overviews for reports and documentation.

What you’ll see:

  • Sortable columns showing metrics with mean, min, max, and median aggregations

  • Color-coded formatting for easy comparison

  • Automatic organization by quantiles (when applicable) and targets

  • Export-ready HTML format

Aggregation behavior:

  • Single target: Simple metric table with quantile breakdown

  • Multiple targets: Comparative statistics across targets

  • Multiple runs: Model comparison with aggregated performance

  • Target groups: Hierarchical organization by categories

Example

>>> from openstef_beam.analysis import AnalysisConfig
>>> from openstef_beam.analysis.visualizations import SummaryTableVisualization
>>> analysis_config = AnalysisConfig(
...     visualization_providers=[
...         SummaryTableVisualization(name="performance_summary"),
...     ]
... )
>>> # Tables will show all available metrics organized by:
>>> # - Quantile levels (0.1, 0.5, 0.9, global)
>>> # - Performance metrics (MAE, RMSE, rCRPS, etc.)
>>> # - Target groupings and model runs
Parameters:

data (Any)

property supported_aggregations: set[AnalysisAggregation]

Returns the set of aggregation types supported by this provider.

Returns:

Set of supported VisualizationAggregation values.

create_by_none(report: EvaluationSubsetReport, metadata: TargetMetadata) VisualizationOutput[source]

Creates visualization for a single target from a single run.

Generates detailed analysis for individual target performance, typically showing time series, detailed metrics, or target-specific insights.

Returns:

Visualization focused on the specific target’s performance.

Parameters:
Return type:

VisualizationOutput

create_by_target(reports: list[tuple[TargetMetadata, EvaluationSubsetReport]]) VisualizationOutput[source]

Creates visualization comparing multiple targets from the same run.

Groups reports by target metadata and creates visualizations showing performance differences across individual targets within the same model run.

Parameters:
Returns:

Visualization comparing performance across different targets.

Return type:

VisualizationOutput

create_by_group(reports: dict[GroupName, list[tuple[TargetMetadata, EvaluationSubsetReport]]]) VisualizationOutput[source]

Create summary table with aggregated metrics by group.

Parameters:
Returns:

VisualizationOutput containing the generated aggregated table

Return type:

VisualizationOutput

create_by_run_and_none(reports: dict[RunName, list[tuple[TargetMetadata, EvaluationSubsetReport]]]) VisualizationOutput[source]

Creates visualization comparing multiple runs on the same target group.

Groups reports by run_name and creates comparative visualizations showing how different models or configurations perform on the same targets.

Parameters:
  • reports (dict[TypeAliasType, list[tuple[TargetMetadata, EvaluationSubsetReport]]]) – Dictionary mapping run names to lists of (metadata, report) tuples for that run.

  • reports

Returns:

Visualization comparing different model runs on the same targets.

Return type:

VisualizationOutput

create_by_run_and_target(reports: dict[RunName, list[tuple[TargetMetadata, EvaluationSubsetReport]]]) VisualizationOutput[source]

Create summary table comparing different runs on the same targets.

Parameters:
Returns:

Visualization output with summary table comparing runs.

Return type:

VisualizationOutput

create_by_run_and_group(reports: dict[tuple[RunName, GroupName], list[tuple[TargetMetadata, EvaluationSubsetReport]]]) VisualizationOutput[source]

Create summary table with aggregated metrics by run and group combinations.

Parameters:
  • reports (dict[tuple[TypeAliasType, TypeAliasType], list[tuple[TargetMetadata, EvaluationSubsetReport]]]) – Dictionary mapping (run_name, group_name) tuples to lists of (metadata, report) tuples

  • reports

Returns:

VisualizationOutput containing the generated aggregated comparison table

Return type:

VisualizationOutput

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': False, 'extra': 'ignore', 'protected_namespaces': ()}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].