scHopfield.plotting.plot_energy_scatters

scHopfield.plotting.plot_energy_scatters(adata: AnnData, cluster_key: str = 'cell_type', basis: str = 'umap', order: List[str] | None = None, plot_energy: str = 'all', show_legend: bool = True, colors: List | Dict | None = None, palette: str | None = None, alpha: float = 0.6, s: float = 20, elev: float = 30, azim: float = -60, **fig_kws) Figure | Axes[source]

Plot energy landscapes for different clusters using 3D scatter plots.

Parameters:
  • adata (AnnData) – Annotated data object with computed energies

  • cluster_key (str, optional (default: 'cell_type')) – Key in adata.obs for cluster labels

  • basis (str, optional (default: 'umap')) – The basis used for embedding

  • order (list, optional) – Order of clusters to display

  • plot_energy (str, optional (default: 'all')) – Which energy to plot: ‘all’, ‘total’, ‘interaction’, ‘degradation’, or ‘bias’

  • show_legend (bool, optional (default: True)) – Whether to show legend

  • colors (list or dict, optional) – Colors for each cluster. Overrides palette.

  • palette (str, optional) – Seaborn or matplotlib colormap name (e.g., ‘tab10’, ‘Set2’)

  • alpha (float, optional (default: 0.6)) – Transparency of points

  • s (float, optional (default: 20)) – Size of points

  • elev (float, optional (default: 30)) – Elevation viewing angle

  • azim (float, optional (default: -60)) – Azimuthal viewing angle

  • **fig_kws – Additional keyword arguments for plt.subplots()

Returns:

Figure (if plot_energy=’all’) or single axes

Return type:

plt.Figure or plt.Axes

Examples

>>> import scHopfield as sch
>>> sch.pl.plot_energy_scatters(adata, cluster_key='cell_type')
>>> sch.pl.plot_energy_scatters(adata, plot_energy='interaction', palette='tab10')