code: def _get_button_xy(buttons, idx):
      from mne.viz._mpl_figure import _OLD_BUTTONS
  
      if _OLD_BUTTONS:
          return buttons.circles[idx].center
      else:
          # Each transform is to display coords, and our offsets are in Axes
          # coords. We want data coords, so we go Axes -> display -> data.
          return buttons.ax.transData.inverted().transform(
              buttons.ax.transAxes.transform(
                  buttons.ax.collections[0].get_offsets()[idx]
              )
          )
  
imports: import itertools
  import os
  from copy import deepcopy
  import matplotlib.pyplot
  import numpy
  import pytest
  from matplotlib import backend_bases
  from numpy.testing import assert_allclose
  from mne import Annotations, create_info, pick_types
  from mne._fiff.pick import _DATA_CH_TYPES_ORDER_DEFAULT, _PICK_TYPES_DATA_DICT
  from mne.annotations import _sync_onset
  from mne.datasets import testing
  from mne.io import RawArray
  from mne.utils import _assert_no_instances, _dt_to_stamp, _record_warnings, check_version, get_config, set_config
  from mne.viz import plot_raw, plot_sensors
  from mne.viz.utils import _fake_click, _fake_keypress
label_desc: Use image node_id 1 for calling a global function with example usage: _get_button_xy(buttons, idx) and returns: buttons, buttons