code: def plot_diagnostics(model: SklearnModel):
      fig, ((ax1, ax2, ax3, ax4), (ax5, ax6, ax7, _)) = plt.subplots(
          2, 4, figsize=(10, 10)
      )
      fig.suptitle("Diagnostics")
      plot_qq(model, ax1)
      plot_tree_depth(model, ax2)
      plot_sigma_convergence(model, ax3)
      plot_homoscedasticity_diagnostics(model, ax4)
      plot_tree_mutation_acceptance_rate(model, ax5)
      # plot_tree_likelihood(model, ax6)
      # plot_tree_probs(model, ax7)
  
      plt.show()
  
file_path: imodels/imodels/experimental/bartpy/diagnostics/diagnostics.py
imports: import numpy
  import pandas
  from imodels import FIGSRegressor
  from matplotlib import pyplot
  from sklearn import datasets, model_selection
  from sklearn.ensemble import GradientBoostingRegressor
  from sklearn.metrics import mean_squared_error
  from imodels.util.tree_interaction_utils import get_interacting_features
  from ..diagnostics.residuals import plot_qq, plot_homoscedasticity_diagnostics
  from ..diagnostics.sampling import plot_tree_mutation_acceptance_rate, plot_tree_likelihood, plot_tree_probs
  from ..diagnostics.sigma import plot_sigma_convergence
  from ..diagnostics.trees import plot_tree_depth
  from ..initializers.sklearntreeinitializer import SklearnTreeInitializer
  from ..sklearnmodel import SklearnModel, BART
label_desc: Use image node_id 1 for calling a global function with example usage: plot_diagnostics(model) without return types