code: def testTriangularSampleMultidimensionalVariance(self):
      low = np.array([np.arange(1, 21, dtype=self._dtype)])
      high = low + 3.0
      peak = (high - low) / 3 + low
      tri = triangular.Triangular(
          low=low, high=high, peak=peak, validate_args=True
      )
      n = int(100e3)
      samples = tri.sample(n, seed=test_util.test_seed())
      sample_values = self.evaluate(samples)
      self.assertEqual(samples.shape, (n, 1, 20))
      self.assertEqual(sample_values.shape, (n, 1, 20))
      self.assertAllClose(
          sample_values.var(axis=0),
          self._scipy_triangular(low, high, peak).var(),
          rtol=0.03,
          atol=0,
      )
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import triangular
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 22 for calling the _TriangularTest obj's underlying member method code with example usage: obj.testTriangularSampleMultidimensionalVariance() without return types