smftools.plotting.classifiers#

Functions

plot_feature_importances_or_saliency(models, ...)

Plot feature importances or saliency for trained models.

plot_model_curves_from_adata(adata[, ...])

Plot ROC and PR curves using AnnData model outputs.

plot_model_curves_from_adata_with_frequency_grid(adata)

Plot ROC/PR curves with frequency grid overlays.

plot_model_performance(metrics[, save_path])

Plot ROC and precision-recall curves for model metrics.

smftools.plotting.classifiers.plot_model_performance(metrics, save_path=None)#

Plot ROC and precision-recall curves for model metrics.

Parameters:
  • metrics -- Dictionary of model metrics by reference.

  • save_path (default: None) -- Optional path to save plots.

smftools.plotting.classifiers.plot_feature_importances_or_saliency(models, positions, tensors, site_config, adata=None, layer_name=None, save_path=None, shaded_regions=None)#

Plot feature importances or saliency for trained models.

Parameters:
  • models -- Mapping of trained models.

  • positions -- Mapping of positions per reference.

  • tensors -- Mapping of input tensors per reference.

  • site_config -- Site configuration mapping.

  • adata (default: None) -- Optional AnnData object.

  • layer_name (default: None) -- Optional layer name for plotting.

  • save_path (default: None) -- Optional path to save plots.

  • shaded_regions (default: None) -- Optional list of regions to highlight.

smftools.plotting.classifiers.plot_model_curves_from_adata(adata, label_col='activity_status', model_names=['cnn', 'mlp', 'rf'], suffix='GpC_site_CpG_site', omit_training=True, save_path=None, ylim_roc=(0.0, 1.05), ylim_pr=(0.0, 1.05))#

Plot ROC and PR curves using AnnData model outputs.

Parameters:
  • adata -- AnnData containing model outputs.

  • label_col (default: 'activity_status') -- Ground-truth label column.

  • model_names (default: ['cnn', 'mlp', 'rf']) -- Model name prefixes.

  • suffix (default: 'GpC_site_CpG_site') -- Prediction column suffix.

  • omit_training (default: True) -- Whether to omit training rows.

  • save_path (default: None) -- Optional path to save the plot.

  • ylim_roc (default: (0.0, 1.05)) -- Y-axis limits for ROC curve.

  • ylim_pr (default: (0.0, 1.05)) -- Y-axis limits for PR curve.

smftools.plotting.classifiers.plot_model_curves_from_adata_with_frequency_grid(adata, label_col='activity_status', model_names=['cnn', 'mlp', 'rf'], suffix='GpC_site_CpG_site', omit_training=True, save_path=None, ylim_roc=(0.0, 1.05), ylim_pr=(0.0, 1.05), pos_sample_count=500, pos_freq_list=[0.01, 0.05, 0.1], show_f1_iso_curves=False, f1_levels=None)#

Plot ROC/PR curves with frequency grid overlays.

Parameters:
  • adata -- AnnData containing model outputs.

  • label_col (default: 'activity_status') -- Ground-truth label column.

  • model_names (default: ['cnn', 'mlp', 'rf']) -- Model name prefixes.

  • suffix (default: 'GpC_site_CpG_site') -- Prediction column suffix.

  • omit_training (default: True) -- Whether to omit training rows.

  • save_path (default: None) -- Optional path to save the plot.

  • ylim_roc (default: (0.0, 1.05)) -- Y-axis limits for ROC curve.

  • ylim_pr (default: (0.0, 1.05)) -- Y-axis limits for PR curve.

  • pos_sample_count (default: 500) -- Sample count for positive baseline.

  • pos_freq_list (default: [0.01, 0.05, 0.1]) -- List of positive class frequencies to plot.

  • show_f1_iso_curves (default: False) -- Whether to show F1 iso-curves.

  • f1_levels (default: None) -- F1 levels to plot if enabled.