示例#1
0
 def test_image_selection_numeric(self):
     img = Image(([0, 1, 2], [0, 1, 2, 3], np.random.rand(4, 3)))
     expr, bbox, region = img._get_selection_expr_for_stream_value(
         bounds=(0.5, 1.5, 2.1, 3.1))
     self.assertEqual(bbox, {'x': (0.5, 2.1), 'y': (1.5, 3.1)})
     self.assertEqual(
         expr.apply(img, expanded=True, flat=False),
         np.array([[False, False, False], [False, False, False],
                   [False, True, True], [False, True, True]]))
     self.assertEqual(region, Rectangles([(0.5, 1.5, 2.1, 3.1)]) * Path([]))
示例#2
0
 def test_img_selection_geom_inverted(self):
     img = Image(([0, 1, 2], [0, 1, 2, 3], np.random.rand(4, 3))).opts(invert_axes=True)
     geom = np.array([(-0.4, -0.1), (0.6, -0.1), (0.4, 1.7), (-0.1, 1.7)])
     expr, bbox, region = img._get_selection_expr_for_stream_value(geometry=geom)
     self.assertEqual(bbox, {'y': np.array([-0.4, 0.6, 0.4, -0.1]),
                             'x': np.array([-0.1, -0.1, 1.7, 1.7])})
     self.assertEqual(expr.apply(img, expanded=True, flat=False), np.array([
         [ True,  True, False],
         [ False, False, False],
         [ False,  False, False],
         [False, False, False]
     ]))
     self.assertEqual(region, Rectangles([]) * Path([list(geom)+[(-0.4, -0.1)]]))