code: def draw_core(self, max_display=None):
      feature_shap_values = self.data["shap_values"]
      shap_values = np.array(
          [v for _, v in feature_shap_values]
      ).transpose()[self.data["class_id"], ::]
      train_data = self.data["train_data"]
      feature_names = [n for n, _ in feature_shap_values]
      shap.summary_plot(
          shap_values,
          train_data,
          feature_names=feature_names,
          max_display=max_display,
          show=False,
      )
  
imports: import matplotlib.pyplot
  import numpy
  import pandas
  import seaborn
  import xai.constants
  from wordcloud import WordCloud
  import shap
  from xai.graphs.basic_graph import Graph
  from typing import List
  from collections import Counter
  import operator
  from xai.data.exceptions import NoItemsError
label_desc: Use image node_id 2 for calling the FeatureShapValues obj's underlying member method code with example usage: obj.draw_core(max_display) without return types