class_docstr: A composed plot to compare the difference between two confusion matrices
code: def plot(self, ax=None):
      if ax is None:
          _, ax = plt.subplots()
  
      _plot_cm(
          self.cm,
          cmap=default_heatmap(),
          ax=ax,
          target_names=self.target_names,
          normalize=False,
      )
  
      return ax
  
imports: import json
  from pathlib import Path
  import numpy
  import matplotlib.pyplot
  from sklearn.metrics import confusion_matrix
  from sklearn_evaluation import __version__
  from ..telemetry import SKLearnEvaluationLogger
  from ..plot.matplotlib import bar
  from ..metrics import precision_at
  from ..None import compute
  from ..util import is_column_vector, is_row_vector, default_heatmap
  from sklearn_evaluation.plot.plot import AbstractPlot, AbstractComposedPlot
  from ..plot import _matrix
  from ploomber_core.exceptions import modify_exceptions
label_desc: Use image node_id 2 for calling the ConfusionMatrixSub obj's underlying member method code with example usage: obj.plot(ax) and returns: ax