code: def main():
      n_trees = 50
      n_samples = 5000
      n_burn = 10000
      n_chains = 5
      with tqdm(DATASETS_REGRESSION) as t:
          for d in t:
              t.set_description(f"{d[0]}")
              X, y, feat_names = get_clean_dataset(
                  d[1], data_source=d[2]
              )
              n = len(y)
  
              (
                  X_train,
                  X_test,
                  y_train,
                  y_test,
              ) = model_selection.train_test_split(
                  X, y, test_size=0.3, random_state=4
              )
  
              bart_zero = BART(
                  classification=False,
                  store_acceptance_trace=True,
                  n_trees=n_trees,
                  n_samples=n_samples,
                  n_burn=n_burn,
                  n_chains=n_chains,
                  thin=1,
              )
              bart_zero.fit(X_train, y_train)
  
              fig, axs = plt.subplots(4, 1, figsize=(10, 22))
              # fig.tight_layout()
              fig.subplots_adjust(hspace=0.2)
  
              # plot_chains_leaves(bart_zero, axs[0], X=X_test, y=y_test)
              analyze_functional(
                  bart_zero,
                  functional=mse_functional,
                  ax=axs[0],
                  X=X_test,
                  y=y_test,
                  name="Test MSE",
              )
              analyze_functional(
                  bart_zero,
                  functional=n_leaves_functional,
                  ax=axs[1],
                  X=X_test,
                  y=y_test,
                  name="# Leaves",
              )
              plot_within_chain(bart_zero, axs[2], X=X_test, y=y_test)
              plot_across_chains(bart_zero, axs[3], X=X_test, y=y_test)
  
              title = f"Dataset: {d[0].capitalize()}, (n = {n}, burn = {n_burn})"
              plt.suptitle(title)
  
              plt.savefig(
                  os.path.join(
                      ART_PATH,
                      "functional",
                      f"{d[0]}_samples_{n_samples}.png",
                  )
              )
              plt.close()
  
imports: import argparse
  import itertools
  import os
  from functools import partial
  import numpy
  import pandas
  import matplotlib.pyplot
  from matplotlib import cm
  from tqdm import tqdm
  from sklearn import model_selection, datasets
  from sklearn.metrics import mean_squared_error
  from imodels import get_clean_dataset
  from imodels.experimental.bartpy.model import Model
  from imodels.experimental.bartpy.tree import Tree
  from ..sklearnmodel import BART, SklearnModel
label_desc: Use image node_id 8 for calling a global function with example usage: main() without return types