def plot_part_dep(self, fields, limit=20, asc=False):
    '\n        Plots partial dependency plot for sublist of connected `fields`\n        `fields` must be sublist of `fields` given on initalization calculation\n        '

    def prepare_colors(df_pd: pd.DataFrame):
        heat_min = df_pd['times'].min()
        heat_max = df_pd['times'].max()
        dif = (heat_max - heat_min)
        colors = [(((times - heat_min) / dif), ((times - heat_min) / (4 * dif)), 0.75) for times in df_pd['times']]
        return colors
    df = self.part_dep_df.query(f"feature == '{self._list_to_key(fields)}'")
    dep_var = self.dep_var
    df_copy = df.copy()
    df_copy['feature'] = df_copy['feature'].str.slice(0, 45)
    df_copy = df_copy.sort_values(by=dep_var, ascending=asc)[:limit].sort_values(by=dep_var, ascending=(not asc))
    colors = prepare_colors(df_pd=df_copy)
    ax = df_copy.plot.barh(x='value', y=dep_var, sort_columns=True, figsize=(10, 10), color=colors, title=self._list_to_key(fields))
    ax.set_ylabel(fields)
    if self.is_biclassification:
        txt = f"According to probability of {self._get_dep_var()} is '{learn.dls.vocab[0]}'"
        ax.annotate(txt, (0, 0), (0, (- 30)), xycoords='axes fraction', textcoords='offset points', va='top')
    for (p, t) in zip(ax.patches, df_copy['times']):
        ax.annotate(f'{p.get_width():.4f}', ((p.get_width() * 1.005), (p.get_y() * 1.005)))
        ax.annotate(f'{int(t)}', ((p.get_width() * 0.45), (p.get_y() + 0.1)), color='white', weight='bold')
Plots partial dependency plot for sublist of connected `fields`
`fields` must be sublist of `fields` given on initalization calculation
def plot_part_dep(self, fields, limit=20, asc=False):
    '\n        Plots partial dependency plot for sublist of connected `fields`\n        `fields` must be sublist of `fields` given on initalization calculation\n        '

    def prepare_colors(df_pd: pd.DataFrame):
        heat_min = df_pd['times'].min()
        heat_max = df_pd['times'].max()
        dif = (heat_max - heat_min)
        colors = [(((times - heat_min) / dif), ((times - heat_min) / (4 * dif)), 0.75) for times in df_pd['times']]
        return colors
    df = self.part_dep_df.query(f"feature == '{self._list_to_key(fields)}'")
    dep_var = self.dep_var
    df_copy = df.copy()
    df_copy['feature'] = df_copy['feature'].str.slice(0, 45)
    df_copy = df_copy.sort_values(by=dep_var, ascending=asc)[:limit].sort_values(by=dep_var, ascending=(not asc))
    colors = prepare_colors(df_pd=df_copy)
    ax = df_copy.plot.barh(x='value', y=dep_var, sort_columns=True, figsize=(10, 10), color=colors, title=self._list_to_key(fields))
    ax.set_ylabel(fields)
    if self.is_biclassification:
        txt = f"According to probability of {self._get_dep_var()} is '{learn.dls.vocab[0]}'"
        ax.annotate(txt, (0, 0), (0, (- 30)), xycoords='axes fraction', textcoords='offset points', va='top')
    for (p, t) in zip(ax.patches, df_copy['times']):
        ax.annotate(f'{p.get_width():.4f}', ((p.get_width() * 1.005), (p.get_y() * 1.005)))
        ax.annotate(f'{int(t)}', ((p.get_width() * 0.45), (p.get_y() + 0.1)), color='white', weight='bold')