code: def finalize(self, **kwargs):
          
  
          indices = np.arange(len(self.classes_))
  
          # Set the title
          self.set_title("Class Prediction Error for {}".format(self.name))
  
          # Set the x ticks with the class names
          self.ax.set_xticks(indices)
          self.ax.set_xticklabels(self.classes_)
  
          # Set the axes labels
          self.ax.set_xlabel("actual class")
          self.ax.set_ylabel("number of predicted class")
  
          # Compute the ceiling for the y limit
          cmax = max([sum(predictions) for predictions in self.predictions_])
          self.ax.set_ylim(0, cmax + cmax * 0.1)
  
          # Put the legend outside of the graph
          plt.legend(bbox_to_anchor=(1.04, 0.5), loc="center left")
          plt.tight_layout(rect=[0, 0, 0.85, 1])
docs: Finalize executes any subclass-specific axes finalization steps.
          The user calls poof and poof calls finalize.