# Path: enrich2/plots.py
# DEFAULT_BINS = 30
# DEFAULT_GRIDSIZE = 50
# def configure_axes(ax, xgrid=False):
# def fit_axes(ax, xvalues, yvalues, slope, intercept, xlabels=None):
# def fit_axes_text(ax, cornertext=None, centertext=None, centerwrap=40):
# def volcano_plot(df, pdf, title=None, colors=None, log_bins=True, logp_max=10):
# def barcodemap_plot(
#     obj, pdf, log=False, bins=DEFAULT_BINS, color=plot_colors["bright3"]
# ):
# def overlap_merge_plot(obj, pdf):
# def counts_plot(
#     seqlib, label, pdf, log=False, bins=DEFAULT_BINS, color=plot_colors["bright1"]
# ):
# def weights_plot(selection, label, pdf):
# def corr_axes(ax, x, y, score_min, score_max, **kwargs):
# def hexbin_corr_axes(
#     ax, x, y, score_min, score_max, cbar_ax=None, gridsize=50, cmap="YlGnBu_r"
# ):
# def density_ax(ax, ys, xmin, xmax, xlabel, line_params, legend_loc="best"):


import logging
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import LinearSegmentedColormap
from matplotlib.patches import Circle
from matplotlib.lines import Line2D
from matplotlib.gridspec import GridSpec
from .plots import plot_cmaps, plot_colors
    "I",
    "L",
    "V",  # Non-polar
    "F",
    "W",
    "Y",  # Aromatic
    "G",
    "P",  # Unique
    "*",
]

#: List of tuples for amino acid physiochemical property groups.
#: Each tuple contains the label string and the corresponding start and end
#: indices in :py:const:`aa_list` (inclusive).
AA_LABEL_GROUPS = [
    ("(+)", 0, 2),
    ("(-)", 3, 4),
    ("Polar-neutral", 5, 10),
    ("Non-polar", 11, 14),
    ("Aromatic", 15, 17),
    ("Unique", 18, 19),
]

#: List of nucleotides in row order for sequence-function maps.
NT_LIST = ["A", "C", "G", "T"]


def parse_aa_list(fname):
    group_labels = list()
    groups = list()

# Path: enrich2/plots.py
# DEFAULT_BINS = 30
# DEFAULT_GRIDSIZE = 50
# def configure_axes(ax, xgrid=False):
# def fit_axes(ax, xvalues, yvalues, slope, intercept, xlabels=None):
# def fit_axes_text(ax, cornertext=None, centertext=None, centerwrap=40):
# def volcano_plot(df, pdf, title=None, colors=None, log_bins=True, logp_max=10):
# def barcodemap_plot(
#     obj, pdf, log=False, bins=DEFAULT_BINS, color=plot_colors["bright3"]
# ):
# def overlap_merge_plot(obj, pdf):
# def counts_plot(
#     seqlib, label, pdf, log=False, bins=DEFAULT_BINS, color=plot_colors["bright1"]
# ):
# def weights_plot(selection, label, pdf):
# def corr_axes(ax, x, y, score_min, score_max, **kwargs):
# def hexbin_corr_axes(
#     ax, x, y, score_min, score_max, cbar_ax=None, gridsize=50, cmap="YlGnBu_r"
# ):
# def density_ax(ax, ys, xmin, xmax, xlabel, line_params, legend_loc="best"):


# Path: enrich2/sfmap.py
import logging
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import LinearSegmentedColormap
from matplotlib.patches import Circle
from matplotlib.lines import Line2D
from matplotlib.gridspec import GridSpec
from .plots import plot_cmaps, plot_colors

    "I",
    "L",
    "V",  # Non-polar
    "F",
    "W",
    "Y",  # Aromatic
    "G",
    "P",  # Unique
    "*",
]

#: List of tuples for amino acid physiochemical property groups.
#: Each tuple contains the label string and the corresponding start and end
#: indices in :py:const:`aa_list` (inclusive).
AA_LABEL_GROUPS = [
    ("(+)", 0, 2),
    ("(-)", 3, 4),
    ("Polar-neutral", 5, 10),
    ("Non-polar", 11, 14),
    ("Aromatic", 15, 17),
    ("Unique", 18, 19),
]

#: List of nucleotides in row order for sequence-function maps.
NT_LIST = ["A", "C", "G", "T"]


def parse_aa_list(fname):
    group_labels = list()
    groups = list()

    found_aa = list()