gedi2py.plotting.convergence

gedi2py.plotting.convergence(adata, *, which='all', key='gedi', log_scale=True, title=None, figsize=None, show=None, save=None, ax=None, return_fig=False)[source]

Plot GEDI training convergence.

Visualizes how model parameters evolved during training to assess convergence. Available metrics:

  • sigma2: Noise variance (should stabilize)

  • dZ: Change in metagenes Z per iteration

  • dA: Change in pathway coefficients A (if using pathway priors)

  • do: Change in offsets o

Parameters:
  • adata (AnnData) – Annotated data matrix with GEDI results.

  • which (Literal['sigma2', 'dZ', 'dA', 'do', 'all'], default: 'all') – Which convergence metric(s) to plot: - "sigma2": Only noise variance - "dZ": Only metagene changes - "dA": Only pathway coefficient changes - "do": Only offset changes - "all": All available metrics (default)

  • key (str, default: 'gedi') – Key in adata.uns where GEDI results are stored.

  • log_scale (bool, default: True) – If True, use log scale for y-axis (except sigma2).

  • title (str | None, default: None) – Plot title.

  • figsize (tuple[float, float] | None, default: None) – Figure size (width, height) in inches.

  • show (bool | None, default: None) – If True, show the figure.

  • save (str | None, default: None) – Path to save the figure.

  • ax (Axes | None, default: None) – Pre-existing axes for the plot. Only valid for single metric.

  • return_fig (bool, default: False) – If True, return the figure object.

Returns:

Depending on ``return_fig``

Return type:

Figure, Axes, or None.

Examples

>>> import gedi2py as gd
>>> gd.tl.gedi(adata, batch_key="sample", n_latent=10)
>>> gd.pl.convergence(adata)
>>> gd.pl.convergence(adata, which="sigma2", log_scale=False)