code: def viz_knowledge(
      orientation="TD", max_depth=3, random_state=666, fancy=True
  ):
      # data from https://archive.ics.uci.edu/ml/datasets/User+Knowledge+Modeling
      clf = tree.DecisionTreeClassifier(
          max_depth=max_depth, random_state=random_state
      )
      know = pd.read_csv("data/knowledge.csv")
      target_names = ["very_low", "Low", "Middle", "High"]
      know["UNS"] = know["UNS"].map(
          {n: i for i, n in enumerate(target_names)}
      )
  
      X_train, y_train = know.drop("UNS", axis=1), know["UNS"]
      clf = clf.fit(X_train[["PEG", "LPR"]], y_train)
  
      X = X_train.iloc[np.random.randint(0, len(know))]
  
      viz = dtreeviz(
          clf,
          X_train[["PEG", "LPR"]],
          y_train,
          target_name="UNS",
          feature_names=["PEG", "LPR"],
          orientation=orientation,
          class_names=target_names,
          #                   show_node_labels=True,
          histtype="strip",
          fancy=fancy,
      )
      return viz
  
file_path: dtreeviz/testing/testone.py
imports: import graphviz
  from dtreeviz.shadow import *
  from gen_samples import *
  import tempfile
  from sklearn.tree import export_graphviz
label_desc: Use image node_id 3 for calling a global function with example usage: viz_knowledge(orientation, max_depth, random_state, fancy) and returns: viz