code: def ctreeviz_univar(
      tree_model,
      X_train: (
          pd.DataFrame,
          np.ndarray,
      ) = None,  # dataframe with only one column
      y_train: (pd.Series, np.ndarray) = None,
      feature_names: List[str] = None,
      target_name: str = None,
      class_names: (
          Mapping[Number, str],
          List[str],
      ) = None,  # required if classifier,
      tree_index: int = None,  # required in case of tree ensemble
      fontsize=10,
      fontname="Arial",
      nbins=25,
      gtype="strip",
      show={"title", "legend", "splits"},
      colors=None,
      ax=None,
  ):
      warnings.warn(
          "ctreeviz_univar() function is deprecated starting from version 2.0. \n "
          "For the same functionality, please use this code instead: \n m = dtreeviz.model(...) \n m.ctree_feature_space(...)",
          DeprecationWarning,
          stacklevel=2,
      )
  
      if isinstance(feature_names, str):
          feature_names = [feature_names]
      shadow_tree = ShadowDecTree.get_shadow_tree(
          tree_model,
          X_train,
          y_train,
          feature_names,
          target_name,
          class_names,
          tree_index,
      )
      model = DTreeVizAPI(shadow_tree)
      model.ctree_feature_space(
          fontsize, fontname, nbins, gtype, show, colors, ax
      )
  
imports: import warnings
  from numbers import Number
  from typing import Mapping, List
  import numpy
  import pandas
  from sklearn import tree
  from dtreeviz.models.shadow_decision_tree import ShadowDecTree
  from dtreeviz.utils import myround, DTreeVizRender
  from dtreeviz.trees import DTreeVizAPI
label_desc: Use image node_id 5 for calling a global function with example usage: ctreeviz_univar(tree_model, X_train, y_train, feature_names, target_name, class_names, tree_index, fontsize, fontname, nbins, gtype, show, colors, ax) without return types