code: def compare_figure(fname, savefig_kwargs={}, tol=0):
      actual = os.path.join(result_dir, fname)
      plt.savefig(actual, **savefig_kwargs)
  
      expected = os.path.join(result_dir, "expected_%s" % fname)
      shutil.copyfile(os.path.join(baseline_dir, fname), expected)
      err = compare_images(expected, actual, tol=tol)
      if err:
          raise ImageComparisonFailure(err)
  
imports: import datetime
  from io import BytesIO
  import os
  import shutil
  import numpy
  from packaging.version import parse
  import pytest
  import matplotlib
  import matplotlib.pyplot
  from matplotlib.testing import _has_tex_package, _check_for_pgf
  from matplotlib.testing.exceptions import ImageComparisonFailure
  from matplotlib.testing.compare import compare_images
  from matplotlib.backends.backend_pgf import PdfPages
  from matplotlib.testing.decorators import _image_directories, check_figures_equal, image_comparison
  from matplotlib.testing._markers import needs_ghostscript, needs_pgf_lualatex, needs_pgf_pdflatex, needs_pgf_xelatex
label_desc: Use image node_id 1 for calling a global function with example usage: compare_figure(fname, savefig_kwargs, tol) without return types