code: def repartition_pie_chart_image_creator(
      label2counts: Dict[int, List[int]],
      counters: List[int],
      colors: Union[ndarray, Iterable, int, float] = SEABORN_COLORS,
      fmt: str = "%1.1f%%",
  ):
      """
      Create a pie chart representing the labels repartition.
  
      :param label2counts: A dict holding the counts for each label, of the form
          {label: [count_at_step_0, count_at_step_1, ...]}. Only the last count of
          each label is used here.
      :param counters: (unused) The steps the counts were taken at.
      :param colors: The colors to use in the chart.
      :param fmt: Formatting used to display the text values in the chart.
      """
      ax: Axes
      fig, ax = plt.subplots()
  
      labels, counts = zip(
          *((label, c[-1]) for label, c in label2counts.items())
      )
  
      ax.pie(counts, labels=labels, autopct=fmt, colors=colors)
  
      fig.tight_layout()
      return fig
  
file_path: avalanche/avalanche/evaluation/metric_utils.py
imports: from typing import Dict, Optional, Union, Iterable, Sequence, Tuple, TYPE_CHECKING, List, Callable, Any
  import matplotlib.pyplot
  import numpy
  from matplotlib.axes import Axes
  from numpy import ndarray, arange
  from torch import Tensor
label_desc: Use image node_id 2 for calling a global function with example usage: repartition_pie_chart_image_creator(label2counts, counters, colors, fmt) and returns: fig