code: def trend_plot(benchmarks):
      explainer_metrics = get_metrics(
          benchmarks, lambda x, y: x.union(y)
      )
  
      # plot all curves if metric exists
      for metric in explainer_metrics:
          plt.clf()
  
          for explainer in benchmarks:
              scores = benchmarks[explainer]
              if metric in scores["values"]:
                  x, y, auc = scores["values"][metric]
                  plt.plot(x, y, label=f"{round(auc, 3)} - {explainer}")
  
          if "keep" in metric:
              xlabel = "Percent Unmasked"
          if "remove" in metric:
              xlabel = "Percent Masked"
  
          plt.ylabel("Model Output")
          plt.xlabel(xlabel)
          plt.title(metric)
          plt.legend()
          plt.show()
  
file_path: shap/shap/benchmark/framework.py
imports: import itertools
  import matplotlib.pyplot
  import numpy
  import pandas
  from .None import perturbation
label_desc: Use image node_id 4 for calling a global function with example usage: trend_plot(benchmarks) without return types