"""
This subpackage contains plotting modules.

Most of the functions are generally useful to compare annotations to each other, for example:

- compare predicted labels to a ground truth label column
- compare label columns generated by different methods
"""

from .module_score_plots import (
    module_score_barplot,
    module_score_umap,

)

from .annotate_genes_on_heatmap import (
    annotate_gene_groups_with_ai_biological_process,

)

from .agreement_bar_plots import (
    plot_grouped_average,
    plot_model_agreement,
    plot_model_agreement_categorical,

)

from .sankey_plots import (
    plot_sankey,
    save_sankey,

)

from .confusion_matrix_plots import (
    plot_confusion_matrix_from_adata,
    plot_confusion_matrix,

)

from .stabilizing_classifier_plots import (
    plot_training_history,
    plot_changes,

)

__all__ = [
    # from module_score_plots.py
    "module_score_barplot",
    "module_score_umap",

    # from annotate_genes_on_heatmap.py
    "annotate_gene_groups_with_ai_biological_process",

    # from agreement_bar_plots.py
    "plot_grouped_average",
    "plot_model_agreement",
    "plot_model_agreement_categorical",

    # from sankey_plots.py
    "plot_sankey",
    "save_sankey",

    # from confusion_matrix_plots.py
    "plot_confusion_matrix_from_adata",
    "plot_confusion_matrix",

    # from stabilizing_classifier_plots.py
    "plot_training_history",
    "plot_changes",
]
