code: def default_mean_scores_image_creator(
      label2step2mean_scores: Dict[LabelCat, Dict[int, float]]
  ) -> Figure:
      """
      Default function to create an image of the evolution of the scores of the
          true class, averaged by new and old classes.
  
      :param label2step2mean_scores: A dictionary that, for each label category
          ("old" and "new") contains a dictionary of mean scores indexed by the
          step of the observation.
      :return: The figure containing the graphs.
      """
      ax: Axes
      fig, ax = subplots()
  
      markers = "*o"
  
      for marker, (label, step2mean_scores) in zip(
          markers, label2step2mean_scores.items()
      ):
          ax.plot(
              step2mean_scores.keys(),
              step2mean_scores.values(),
              marker,
              label=label,
          )
  
      ax.legend(loc="lower left")
      ax.set_xlabel("step")
      ax.set_ylabel("mean score")
  
      fig.tight_layout()
      return fig
  
imports: from abc import ABC, abstractmethod
  from collections import defaultdict
  from typing import Callable, Dict, Set, TYPE_CHECKING, List, Optional, TypeVar
  import torch
  from matplotlib.axes import Axes
  from matplotlib.figure import Figure
  from matplotlib.pyplot import subplots
  from torch import Tensor, arange
  from avalanche.evaluation import Metric, PluginMetric
  from avalanche.evaluation.metric_utils import get_metric_name
  from avalanche.evaluation.metrics import Mean
  from avalanche.evaluation.metric_results import MetricValue, AlternativeValues
  from typing_extensions import Literal
label_desc: Use image node_id 1 for calling a global function with example usage: default_mean_scores_image_creator(label2step2mean_scores) and returns: fig