docstr: Shows shap summary component
  
  Args:
      explainer (Explainer): explainer object constructed with either
                  ClassifierExplainer() or RegressionExplainer()
      title (str, optional): Title of tab or page. Defaults to
                  "Shap Dependence Summary".
      name (str, optional): unique name to add to Component elements.
                  If None then random uuid is generated to make sure
                  it's unique. Defaults to None.
      subtitle (str): subtitle
      hide_title (bool, optional): hide the title. Defaults to False.
      hide_subtitle (bool, optional): Hide subtitle. Defaults to False.
      hide_depth (bool, optional): hide the depth toggle.
                  Defaults to False.
      hide_type (bool, optional): hide the summary type toggle
                  (aggregated, detailed). Defaults to False.
      hide_popout (bool, optional): hide popout button
      hide_selector (bool, optional): hide pos label selector. Defaults to False.
      pos_label ({int, str}, optional): initial pos label.
                  Defaults to explainer.pos_label
      depth (int, optional): initial number of features to show. Defaults to None.
      summary_type (str, {'aggregate', 'detailed'}. optional): type of
                  summary graph to show. Defaults to "aggregate".
      max_cat_colors (int, optional): for categorical features, maximum number
          of categories to label with own color. Defaults to 5.
      plot_sample (int, optional): Instead of all points only plot a random
          sample of points. Defaults to None (=all points)
      description (str, optional): Tooltip to display when hover over
          component title. When None default text is shown.
docstr_tok: ["Shows","shap","summary","component","Args",":","explainer","(","Explainer",")",":","explainer","object","constructed","with","either","ClassifierExplainer","(",")","or","RegressionExplainer","(",")","title","(","str",",","optional",")",":","Title","of","tab","or","page",".","Defaults","to","``","Shap","Dependence","Summary","''",".","name","(","str",",","optional",")",":","unique","name","to","add","to","Component","elements",".","If","None","then","random","uuid","is","generated","to","make","sure","it","'s","unique",".","Defaults","to","None",".","subtitle","(","str",")",":","subtitle","hide_title","(","bool",",","optional",")",":","hide","the","title",".","Defaults","to","False",".","hide_subtitle","(","bool",",","optional",")",":","Hide","subtitle",".","Defaults","to","False",".","hide_depth","(","bool",",","optional",")",":","hide","the","depth","toggle",".","Defaults","to","False",".","hide_type","(","bool",",","optional",")",":","hide","the","summary","type","toggle","(","aggregated",",","detailed",")",".","Defaults","to","False",".","hide_popout","(","bool",",","optional",")",":","hide","popout","button","hide_selector","(","bool",",","optional",")",":","hide","pos","label","selector",".","Defaults","to","False",".","pos_label","(","{","int",",","str","}",",","optional",")",":","initial","pos","label",".","Defaults","to","explainer.pos_label","depth","(","int",",","optional",")",":","initial","number","of","features","to","show",".","Defaults","to","None",".","summary_type","(","str",",","{","'aggregate","'",",","'detailed","'","}",".","optional",")",":","type","of","summary","graph","to","show",".","Defaults","to","``","aggregate","''",".","max_cat_colors","(","int",",","optional",")",":","for","categorical","features",",","maximum","number","of","categories","to","label","with","own","color",".","Defaults","to","5.","plot_sample","(","int",",","optional",")",":","Instead","of","all","points","only","plot","a","random","sample","of","points",".","Defaults","to","None","(","=all","points",")","description","(","str",",","optional",")",":","Tooltip","to","display","when","hover","over","component","title",".","When","None","default","text","is","shown","."]
code: def __init__(
      self,
      explainer,
      title="Shap Summary",
      name=None,
      subtitle="Ordering features by shap value",
      hide_title=False,
      hide_subtitle=False,
      hide_depth=False,
      hide_type=False,
      hide_index=False,
      hide_selector=False,
      hide_popout=False,
      pos_label=None,
      depth=None,
      summary_type="aggregate",
      max_cat_colors=5,
      index=None,
      plot_sample=None,
      description=None,
      **kwargs,
  ):
      """Shows shap summary component
  
      Args:
          explainer (Explainer): explainer object constructed with either
                      ClassifierExplainer() or RegressionExplainer()
          title (str, optional): Title of tab or page. Defaults to
                      "Shap Dependence Summary".
          name (str, optional): unique name to add to Component elements.
                      If None then random uuid is generated to make sure
                      it's unique. Defaults to None.
          subtitle (str): subtitle
          hide_title (bool, optional): hide the title. Defaults to False.
          hide_subtitle (bool, optional): Hide subtitle. Defaults to False.
          hide_depth (bool, optional): hide the depth toggle.
                      Defaults to False.
          hide_type (bool, optional): hide the summary type toggle
                      (aggregated, detailed). Defaults to False.
          hide_popout (bool, optional): hide popout button
          hide_selector (bool, optional): hide pos label selector. Defaults to False.
          pos_label ({int, str}, optional): initial pos label.
                      Defaults to explainer.pos_label
          depth (int, optional): initial number of features to show. Defaults to None.
          summary_type (str, {'aggregate', 'detailed'}. optional): type of
                      summary graph to show. Defaults to "aggregate".
          max_cat_colors (int, optional): for categorical features, maximum number
              of categories to label with own color. Defaults to 5.
          plot_sample (int, optional): Instead of all points only plot a random
              sample of points. Defaults to None (=all points)
          description (str, optional): Tooltip to display when hover over
              component title. When None default text is shown.
      """
      super().__init__(explainer, title, name)
  
      if self.depth is not None:
          self.depth = min(self.depth, self.explainer.n_features)
  
      self.index_selector = IndexSelector(
          explainer,
          "shap-summary-index-" + self.name,
          index=index,
          **kwargs,
      )
      self.index_name = "shap-summary-index-" + self.name
      self.selector = PosLabelSelector(
          explainer, name=self.name, pos_label=pos_label
      )
      assert self.summary_type in {"aggregate", "detailed"}
      if self.description is None:
          self.description = """
          The shap summary summarizes the shap values per feature.
          You can either select an aggregates display that shows mean absolute shap value
          per feature. Or get a more detailed look at the spread of shap values per
          feature and how they correlate the the feature value (red is high).
          """
  
      self.popout = GraphPopout(
          "shap-summary-" + self.name + "popout",
          "shap-summary-graph-" + self.name,
          self.title,
          self.description,
      )
      self.register_dependencies("shap_values_df")
  
imports: import dash
  from dash import html, dcc, Input, Output, State
  from dash.exceptions import PreventUpdate
  import dash_bootstrap_components
  from ..dashboard_methods import *
  from ..None import to_html
label_desc: Use image node_id 1 to create a new ShapSummaryComponent object from inherited base classes: ExplainerComponent with example: obj = ShapSummaryComponent(explainer, title, name, subtitle, hide_title, hide_subtitle, hide_depth, hide_type, hide_index, hide_selector, hide_popout, pos_label, depth, summary_type, max_cat_colors, index, plot_sample, description)