SummaryTableVisualization#
- class openstef_beam.analysis.visualizations.summary_table_visualization.SummaryTableVisualization(**data: Any) None[source]
Bases:
VisualizationProviderCreates 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:
report (
EvaluationSubsetReport)metadata (
TargetMetadata)
- Return type:
- 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:
reports (
list[tuple[TargetMetadata,EvaluationSubsetReport]]) – List of (metadata, report) tuples for each target in the run.reports
- Returns:
Visualization comparing performance across different targets.
- Return type:
- create_by_group(reports: dict[GroupName, list[tuple[TargetMetadata, EvaluationSubsetReport]]]) VisualizationOutput[source]
Create summary table with aggregated metrics by group.
- Parameters:
reports (
dict[TypeAliasType,list[tuple[TargetMetadata,EvaluationSubsetReport]]]) – Dictionary mapping group names to lists of (metadata, report) tuplesreports
- Returns:
VisualizationOutput containing the generated aggregated table
- Return type:
- 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:
- 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:
reports (
dict[TypeAliasType,list[tuple[TargetMetadata,EvaluationSubsetReport]]]) – Dictionary mapping run names to their report lists.reports
- Returns:
Visualization output with summary table comparing runs.
- Return type:
- 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) tuplesreports
- Returns:
VisualizationOutput containing the generated aggregated comparison table
- Return type:
- 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].
- name: str