Plotting

Summary-statistics plotting for multi-method benchmark comparisons.

Every public plotting function follows the same contract:

  • Returns a matplotlib.figure.Figure — ready for wandb.log(), mlflow.log_figure(), or any other experiment-tracker.

  • Accepts an optional save_path — when provided the figure is written to disk (parent directories are created automatically).

  • Never calls plt.show() — the caller decides when/whether to display.

The orchestrator compare_multiple_predictions() returns a dict[str, Figure] mapping descriptive keys to every figure it created.

gene_calling_benchmark.plotting.summary_stat_plotting.compare_multiple_predictions(per_method_benchmark_res, label_config, metrics_to_eval, output_dir=None)[source]

Generate all summary plots and return them as a dict.

Parameters:
  • per_method_benchmark_res (dict[str, dict]) – Outer key = method name, inner dict = benchmark result as returned by benchmark_from_arrays().

  • label_config (LabelConfig) – Used to resolve class token → human-readable name.

  • metrics_to_eval (list[EvalMetrics]) – Which metric groups were computed.

  • output_dir (Path | None) – If provided, every figure is saved as a PNG inside this directory.

Returns:

Keys are descriptive strings such as "indel_counts", "indel_lengths", etc. Suitable for direct wandb.log() usage.

Return type:

dict[str, Figure]