code: def draw_grid_graph_with_budget_only_Acc_and_T(
      acc, bt, b1, b2, img_name: str, y_array: list, x_array: list
  ):
      """
      :param acc: Two array list
      :param bt:  Two array list
      :param img_name: img name string
      :return:
      """
  
      acc_new = np.array(acc)
      acc = acc_new.tolist()
  
      mask = np.array(acc)
      mask[mask > 0] = 0
      mask[mask < 0] = 1
  
      bt = np.round(np.array(bt), 2).tolist()
      mask2 = np.array(bt)
      mask2[mask2 > 0] = 0
      mask2[mask2 < 0] = 1
  
      mask3 = np.array(b1)
      mask3[mask3 > 0] = 0
      mask3[mask3 < 0] = 1
  
      mask4 = np.array(b2)
      mask4[mask4 > 0] = 0
      mask4[mask4 < 0] = 1
  
      fig, ax = plt.subplots(1, 2, figsize=(15, 14))
  
      linewidths = 0.5
      sns.set(font_scale=2)
      sns.heatmap(
          data=acc,
          vmax=99,
          vmin=93,
          cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
          annot=True,
          fmt=".2f",
          annot_kws={
              "size": frontinsidebox,
              "weight": "normal",
              "color": "w",
              "va": "bottom",
          },
          mask=mask,
          square=True,
          linewidths=linewidths,  # 每个方格外框显示，外框宽度设置
          cbar_kws={"shrink": 0.4},
          ax=ax[0],
      )
  
      sns.heatmap(
          data=bt,
          vmax=600,
          # vmin=-9,
          cmap=palettable.cmocean.diverging.Curl_10.mpl_colors,
          annot=True,
          fmt=".2f",
          annot_kws={
              "size": frontinsidebox,
              "weight": "normal",
              "color": "w",
              "va": "top",
          },
          mask=mask2,
          square=True,
          linewidths=linewidths,  # 每个方格外框显示，外框宽度设置
          cbar_kws={"shrink": 0.4},
          ax=ax[1],
      )
  
      plt.tight_layout()
      plt.xlabel("U (epoch)", fontsize=set_font_size)
      plt.ylabel("K (# models)", fontsize=set_font_size)
  
      for j in [0, 1]:
          ax[j].set_xticklabels(x_array, fontsize=set_font_size)
          ax[j].set_yticklabels(y_array, fontsize=set_font_size)
          ax[j].set_xlabel("U (# epoch)", fontsize=set_font_size)
          ax[j].set_ylabel("K (# models)", fontsize=set_font_size)
  
      ax[0].set_title("Test Accuracy (%)", fontsize=set_font_size)
      ax[1].set_title(r"Time Budget $T$ (min)", fontsize=set_font_size)
  
      plt.tight_layout()
      fig.subplots_adjust(wspace=0.3, hspace=0.3)
  
      # plt.show()
      base_dr = os.getcwd()
      path_gra = os.path.join(base_dr, f"{img_name}.pdf")
      fig.savefig(path_gra, bbox_inches="tight")
  
file_path: singa/examples/model_selection/TRAILS-Database-Native-Model-Selection/internal/ml/model_selection/exps/draw_img_lib.py
imports: import os
  from matplotlib import pyplot
  import seaborn
  import numpy
  import palettable
  from matplotlib.ticker import MaxNLocator
  import numpy
  from src.common.constant import Config
  import matplotlib
label_desc: Use image node_id 8 for calling a global function with example usage: draw_grid_graph_with_budget_only_Acc_and_T(acc, bt, b1, b2, img_name, y_array, x_array) without return types