docstr: Prepare for a target plot.
  
  - Assign `self.target` with a list of target columns.
  - Assign `self.n_classes` according to target type.
  - Assign `self.df` with a DataFrame containing feature and target columns.
docstr_tok: ["Prepare","for","a","target","plot",".","-","Assign","`","self.target","`","with","a","list","of","target","columns",".","-","Assign","`","self.n_classes","`","according","to","target","type",".","-","Assign","`","self.df","`","with","a","DataFrame","containing","feature","and","target","columns","."]
code: def prepare_target_plot(self, df, target):
      """
      Prepare for a target plot.
  
      - Assign `self.target` with a list of target columns.
      - Assign `self.n_classes` according to target type.
      - Assign `self.df` with a DataFrame containing feature and target columns.
      """
      target_type = _check_target(target, df)
      self.target = _make_list(target)
  
      if target_type == "binary":
          self.n_classes = 2
      elif target_type == "multi-class":
          self.n_classes = len(self.target)
      else:
          self.n_classes = 0
      use_cols = self.feature_cols + self.target
      self.df = df[use_cols]
  
imports: from .info_plot_utils import TargetPlotEngine, PredictPlotEngine, InteractInfoPlotEngine
  from .utils import _make_list, _check_target, _q1, _q2, _q3, FeatureInfo, _check_dataset, _check_model, _calc_preds, _check_classes, _expand_params_for_interact
  import pandas
  from itertools import product
label_desc: Use image node_id 2 for calling the _BaseInfoPlot obj's underlying member method code with example usage: obj.prepare_target_plot(df, target) without return types