code: def test_plot_ctf():
      """Test plotting of CTF evoked."""
      raw = mne.io.read_raw_ctf(ctf_fname, preload=True)
      events = np.array([[200, 0, 1]])
      event_id = 1
      tmin, tmax = -0.1, 0.5  # start and end of an epoch in s.
      picks = mne.pick_types(
          raw.info,
          meg=True,
          stim=True,
          eog=True,
          ref_meg=True,
          exclude="bads",
      )[::20]
      epochs = mne.Epochs(
          raw,
          events,
          event_id,
          tmin,
          tmax,
          proj=True,
          picks=picks,
          preload=True,
          decim=10,
          verbose="error",
      )
      evoked = epochs.average()
      evoked.plot_joint(times=[0.1])
      mne.viz.plot_compare_evokeds([evoked, evoked])
  
      # make sure axes position is "almost" unchanged
      # when axes were passed to plot_joint by the user
      times = [0.1, 0.2, 0.3]
      fig = plt.figure()
  
      # create custom axes for topomaps, colorbar and the timeseries
      gs = gridspec.GridSpec(3, 7, hspace=0.5, top=0.8, figure=fig)
      topo_axes = [
          fig.add_subplot(gs[0, idx * 2 : (idx + 1) * 2])
          for idx in range(len(times))
      ]
      topo_axes.append(fig.add_subplot(gs[0, -1]))
      ts_axis = fig.add_subplot(gs[1:, 1:-1])
  
      def get_axes_midpoints(axes):
          midpoints = list()
          for ax in axes[:-1]:
              pos = ax.get_position()
              midpoints.append(
                  [
                      pos.x0 + (pos.width * 0.5),
                      pos.y0 + (pos.height * 0.5),
                  ]
              )
          return np.array(midpoints)
  
      midpoints_before = get_axes_midpoints(topo_axes)
      evoked.plot_joint(
          times=times,
          ts_args={"axes": ts_axis},
          topomap_args={"axes": topo_axes},
          title=None,
      )
      midpoints_after = get_axes_midpoints(topo_axes)
      assert (
          np.linalg.norm(midpoints_before - midpoints_after) < 0.1
      ).all()
  
imports: from pathlib import Path
  import matplotlib.pyplot
  import numpy
  import pytest
  from matplotlib import gridspec
  from matplotlib.collections import PolyCollection
  from matplotlib.colors import same_color
  from mpl_toolkits.axes_grid1.parasite_axes import HostAxes
  from numpy.testing import assert_allclose
  import mne
  from mne import Epochs, compute_covariance, compute_proj_evoked, make_fixed_length_events, read_cov, read_events
  from mne._fiff.constants import FIFF
  from mne.datasets import testing
  from mne.io import read_raw_fif
  from mne.stats.parametric import _parametric_ci
  from mne.utils import catch_logging
  from mne.viz import plot_compare_evokeds, plot_evoked_white
  from mne.viz.utils import _fake_click, _get_cmap
label_desc: Use image node_id 12 for calling a global function with example usage: test_plot_ctf() and returns: np