code: def test_2d_gaussians(self):
      sigmas = [1.0, 2.0, 10.0]
      test_data, act_locs = _gen_gaussians_even(sigmas, 100)
      rot_factor = 20
      rot_range = np.arange(0, len(test_data)) - rot_factor
      test_data_2 = np.vstack([test_data, test_data[rot_range]])
      rel_max_rows, rel_max_cols = argrelmax(
          test_data_2, axis=1, order=1
      )
  
      for rw in xrange(0, test_data_2.shape[0]):
          inds = rel_max_rows == rw
  
          assert_(len(rel_max_cols[inds]) == len(act_locs))
          assert_(
              (act_locs == (rel_max_cols[inds] - rot_factor * rw)).all()
          )
  
imports: from __future__ import division, print_function, absolute_import
  import copy
  import numpy
  from numpy.testing import assert_, assert_equal, assert_allclose, assert_array_equal
  import pytest
  from pytest import raises, warns
  from scipy._lib.six import xrange
  from scipy.signal._peak_finding import argrelmax, argrelmin, peak_prominences, peak_widths, _unpack_condition_args, find_peaks, find_peaks_cwt, _identify_ridge_lines
  from scipy.signal._peak_finding_utils import _local_maxima_1d, PeakPropertyWarning
label_desc: Use image node_id 4 for calling the TestArgrel obj's underlying member method code with example usage: obj.test_2d_gaussians() without return types