code: def plot_sched(self: Recorder, keys=None, figsize=None):
      keys = self.hps.keys() if keys is None else L(keys)
      rows, cols = (len(keys) + 1) // 2, min(2, len(keys))
      figsize = figsize or (6 * cols, 4 * rows)
      _, axs = plt.subplots(rows, cols, figsize=figsize)
      axs = axs.flatten() if len(keys) > 1 else L(axs)
      for p, ax in zip(keys, axs):
          ax.plot(self.hps[p])
          ax.set_ylabel(p)
  
imports: from __future__ import annotations
  from ..basics import *
  from .tracker import SaveModelCallback
label_desc: Use image node_id 14 for calling a global function with example usage: plot_sched(keys, figsize) without return types