Skip to content

Plot Diagnostics (`sketch.plot_diagnostics`)

This module provides core predictive diagnostics and trace/distribution plots for sketch workflows.

Model type used by this module is DelayedSaturatedMMMv2 (core.mmm_model_v2).

Import style:

from sketch.plot_diagnostics import (
plot_posterior_predictions,
plot_model_trace,
plot_posterior_distributions,
plot_model_structure,
)
# Compatibility form in some environments:
# from src.sketch.plot_diagnostics import ...

plot_posterior_predictions(X, y, X_test, y_test, mmm, config, output_dir, n_points=52, show_oos_r2=False)

Section titled “plot_posterior_predictions(X, y, X_test, y_test, mmm, config, output_dir, n_points=52, show_oos_r2=False)”

Plots actuals vs posterior predictive with HDI fans and residual panel.

Saved artefacts:

  • model_fit_predictions.png30_model_assessment/
  • model_fit_metrics.csv30_model_assessment/

Plots ArviZ traces for key posterior variables.

Saved artefact:

  • model_trace.png20_model_fit/

plot_posterior_distributions(idata, results_dir, filename="posterior_distributions.png")

Section titled “plot_posterior_distributions(idata, results_dir, filename="posterior_distributions.png")”

Plots posterior distributions for parameters in idata.posterior.

Saved artefact:

  • posterior_distributions.png (or custom filename) → 40_decomposition/

Note: this helper still exists, but V2 workflow now also generates dedicated posterior diagnostics from src/diagnostics/ (for example forest and prior-posterior comparison plots).

Returns a Graphviz model graph (pm.model_to_graphviz).

  • No file is saved automatically.
  • Persisting the rendered graph is caller-managed (for example with graph.render(...)).

V2 diagnostic plots now generated outside sketch.plot_diagnostics

Section titled “V2 diagnostic plots now generated outside sketch.plot_diagnostics”

In V2, many diagnostic plots are produced by src/diagnostics/ modules and saved directly to stage folders:

from sketch.plot_diagnostics import plot_posterior_predictions, plot_model_trace
plot_posterior_predictions(X, y, X_test, y_test, mmm, config, output_dir=results_dir)
plot_model_trace(mmm, results_dir)