docstr: Plot the second graph that explains distances via the use of real exmaples extracted from the dataset
  
  Parameters
  ----------
  method_1 : list
      Contributions of 5 instances selected to display in the second plot for method 1
  method_2 : list
      Contributions of 5 instances selected to display in the second plot for method 2
  l2 : list
      Distance between method_1 and method_2 for the 5 instances
  
  Returns
  -------
  figure
docstr_tok: ["Plot","the","second","graph","that","explains","distances","via","the","use","of","real","exmaples","extracted","from","the","dataset","Parameters","--","--","--","--","--","method_1",":","list","Contributions","of","5","instances","selected","to","display","in","the","second","plot","for","method","1","method_2",":","list","Contributions","of","5","instances","selected","to","display","in","the","second","plot","for","method","2","l2",":","list","Distance","between","method_1","and","method_2","for","the","5","instances","Returns","--","--","--","-","figure"]
code: def plot_examples(
      self,
      method_1,
      method_2,
      l2,
      index,
      backend_name_1,
      backend_name_2,
      max_features,
  ):
      """
      Plot the second graph that explains distances via the use of real exmaples extracted from the dataset
  
      Parameters
      ----------
      method_1 : list
          Contributions of 5 instances selected to display in the second plot for method 1
      method_2 : list
          Contributions of 5 instances selected to display in the second plot for method 2
      l2 : list
          Distance between method_1 and method_2 for the 5 instances
  
      Returns
      -------
      figure
      """
      y = np.arange(method_1[0].shape[0])
      fig, axes = plt.subplots(ncols=len(l2), figsize=(3 * len(l2), 4))
      fig.subplots_adjust(wspace=0.3, top=0.8)
      if len(l2) == 1:
          axes = np.array([axes])
      fig.suptitle(
          "Examples of explanations' comparisons for various distances (L2 norm)"
      )
  
      for n, (i, j, k, l, m, o) in enumerate(
          zip(
              method_1,
              method_2,
              l2,
              index,
              backend_name_1,
              backend_name_2,
          )
      ):
          # Only keep top features according to both methods
          idx = np.flip(np.abs(np.concatenate([i, j])).argsort()) % len(
              i
          )
          _, first_occurrence_idx = np.unique(idx, return_index=True)
          idx, y = (
              idx[np.sort(first_occurrence_idx)][:max_features],
              y[:max_features],
          )
          i, j = i[idx], j[idx]
          # Sort by method_1 (no abs)
          idx = np.flip(i.argsort())
          i, j = i[idx], j[idx]
  
          axes[n].barh(
              y,
              i,
              label="method 1",
              left=0,
              color="#{:02x}{:02x}{:02x}".format(255, 166, 17),
          )
          axes[n].barh(
              y,
              j,
              label="method 2",
              left=np.abs(np.max(i))
              + np.abs(np.min(j))
              + np.max(i) / 3,
              color="#{:02x}{:02x}{:02x}".format(117, 152, 189),
          )  # /3 to add space
  
          # set gray background
          axes[n].set_facecolor("#F5F5F2")
          # draw solid white grid lines
          axes[n].grid(color="w", linestyle="solid")
  
          axes[n].set(
              title="%s: %s"
              % (
                  self.index.name
                  if self.index.name is not None
                  else "Id",
                  l,
              )
              + "\n$d_{L2}$ = "
              + str(round(k, 2))
          )
          axes[n].set_xlabel("Contributions")
          axes[n].set_ylabel(f"Top {max_features} features")
          axes[n].set_xticks(
              [0, np.abs(np.max(i)) + np.abs(np.min(j)) + np.max(i) / 3]
          )
          axes[n].set_xticklabels([m, o])
          axes[n].set_yticks([])
  
      return fig
  
imports: from category_encoders import OrdinalEncoder
  import copy
  import itertools
  import matplotlib.pyplot
  import numpy
  import pandas
  from plotly import graph_objs
  from plotly.offline import plot
  from plotly.subplots import make_subplots
  from sklearn.manifold import MDS
  from shapash import SmartExplainer
  from shapash.style.style_utils import colors_loading, select_palette, define_style
label_desc: Use image node_id 13 for calling the Consistency obj's underlying member method code with example usage: obj.plot_examples(method_1, method_2, l2, index, backend_name_1, backend_name_2, max_features) and returns: fig