code: def prepare_summary_chart(
      disparity_df,
      metrics_list,
      attributes_list,
      fairness_threshold,
      chart_height,
      chart_width,
      chart_default_sizes,
  ):
      ## If a specific list of attributes was not passed, use all from df
      if fairness_threshold is None:
          raise ValueError(
              "Fairness threshold cannot be None for the Summary chart."
          )
  
      metrics = __sanitize_metrics(metrics_list)
  
      if attributes_list is None:
          attributes = list(disparity_df["attribute_name"].unique())
      else:
          attributes = to_list(attributes_list)
  
      __validate_data_inputs(
          disparity_df, metrics, attributes, fairness_threshold
      )
  
      # CHART SIZES
      (chart_height, chart_width) = __calculate_default_sizes(
          chart_height,
          chart_width,
          chart_default_sizes,
          metrics,
          attributes,
      )
  
      return (metrics, attributes, chart_height, chart_width)
  
file_path: aequitas/src/aequitas/plot/commons/initializers.py
imports: import altair
  from aequitas.plot.commons import validators
  from aequitas.plot.commons import scales
  from aequitas.plot.commons.helpers import to_list, calculate_chart_size_from_elements
label_desc: Use image node_id 7 for calling a global function with example usage: prepare_summary_chart(disparity_df, metrics_list, attributes_list, fairness_threshold, chart_height, chart_width, chart_default_sizes) and returns: metrics,  attributes,  chart_height,  chart_width