コード例 #1
0
def test_matplotlib_cmaps(example_subarray):
    """Test using matplotlib colormap names works"""
    from ctapipe.visualization.bokeh import CameraDisplay

    geom = example_subarray.tel[1].camera.geometry
    image = np.ones(len(geom))
    display = CameraDisplay(geom, image)
    display.cmap = "viridis"
    display.cmap = "RdBu"
コード例 #2
0
def test_create_display_without_geometry(example_event, example_subarray):
    """Test we can create a display without giving the geometry to init"""
    from ctapipe.visualization.bokeh import CameraDisplay

    # test we can create it without geometry, and then set all the stuff
    display = CameraDisplay()

    tel_id = next(iter(example_event.r0.tel.keys()))
    display.geometry = example_subarray.tel[tel_id].camera.geometry
    display.image = example_event.dl1.tel[tel_id].image
コード例 #3
0
ファイル: test_bokeh.py プロジェクト: ParsonsRD/ctapipe
def test_camera_enable_pixel_picker(example_event):
    from ctapipe.visualization.bokeh import CameraDisplay
    t = list(example_event.r0.tels_with_data)[0]
    geom = example_event.inst.subarray.tel[t].camera
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    c_display = CameraDisplay(geom, image)

    c_display.enable_pixel_picker(2)
    assert len(c_display.active_pixels) == 2

    c_display.enable_pixel_picker(3)
    assert len(c_display.active_pixels) == 3
コード例 #4
0
ファイル: test_bokeh.py プロジェクト: tysaito2008/ctapipe
def test_camera_geom(example_event):
    t = list(example_event.r0.tels_with_data)[0]
    geom = example_event.inst.subarray.tel[t].camera
    c_display = CameraDisplay(geom)

    assert (c_display.cdsource.data['x'] == geom.pix_x.value).all()
    assert (c_display.cdsource.data['y'] == geom.pix_y.value).all()

    t = list(example_event.r0.tels_with_data)[1]
    geom = example_event.inst.subarray.tel[t].camera
    c_display.geom = geom
    assert (c_display.cdsource.data['x'] == geom.pix_x.value).all()
    assert (c_display.cdsource.data['y'] == geom.pix_y.value).all()
コード例 #5
0
def test_camera_enable_pixel_picker(example_event, example_subarray):
    """Test we can call enable_pixel_picker"""
    from ctapipe.visualization.bokeh import CameraDisplay

    t = list(example_event.r0.tel.keys())[0]
    geom = example_subarray.tel[t].camera.geometry
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    c_display = CameraDisplay(geom, image)

    def callback(attr, new, old):
        print(attr, new, old)

    c_display.enable_pixel_picker(callback)
コード例 #6
0
def test_camera_geom(example_event, example_subarray):
    from ctapipe.visualization.bokeh import CameraDisplay

    t = list(example_event.r0.tels_with_data)[0]
    geom = example_subarray.tel[t].camera.geometry
    c_display = CameraDisplay(geom)

    assert (c_display.cdsource.data["x"] == geom.pix_x.value).all()
    assert (c_display.cdsource.data["y"] == geom.pix_y.value).all()

    t = list(example_event.r0.tels_with_data)[1]
    geom = example_subarray.tel[t].camera.geometry
    c_display.geom = geom
    assert (c_display.cdsource.data["x"] == geom.pix_x.value).all()
    assert (c_display.cdsource.data["y"] == geom.pix_y.value).all()
コード例 #7
0
ファイル: test_bokeh.py プロジェクト: ParsonsRD/ctapipe
def test_camera_geom(example_event):
    from ctapipe.visualization.bokeh import CameraDisplay

    t = list(example_event.r0.tels_with_data)[0]
    geom = example_event.inst.subarray.tel[t].camera
    c_display = CameraDisplay(geom)

    assert (c_display.cdsource.data['x'] == geom.pix_x.value).all()
    assert (c_display.cdsource.data['y'] == geom.pix_y.value).all()

    t = list(example_event.r0.tels_with_data)[1]
    geom = example_event.inst.subarray.tel[t].camera
    c_display.geom = geom
    assert (c_display.cdsource.data['x'] == geom.pix_x.value).all()
    assert (c_display.cdsource.data['y'] == geom.pix_y.value).all()
コード例 #8
0
def test_camera_image(example_event, example_subarray, tmp_path):
    """Test we set an image"""
    from ctapipe.visualization.bokeh import CameraDisplay

    t = list(example_event.r0.tel.keys())[0]
    geom = example_subarray.tel[t].camera.geometry
    image = np.ones(geom.n_pixels)

    display = CameraDisplay(geom, image)
    assert np.all(display.image == image)

    display.image = np.random.normal(size=geom.n_pixels)
    assert np.all(display.image == image)

    output_path = tmp_path / "test.html"
    output_file(output_path)
    save(display.figure, filename=output_path)
コード例 #9
0
def test_cameras(camera_geometry, tmp_path):
    """Test for all known camera geometries"""
    from ctapipe.visualization.bokeh import CameraDisplay

    image = np.random.normal(size=len(camera_geometry))
    display = CameraDisplay(camera_geometry, image)

    output_path = tmp_path / "test.html"
    output_file(output_path)
    save(display.figure, filename=output_path)
コード例 #10
0
def test_camera_display_creation(example_event, example_subarray):
    """Test we can create a display and check the resulting pixel coordinates"""
    from ctapipe.visualization.bokeh import CameraDisplay

    t = list(example_event.r0.tel.keys())[0]
    geom = example_subarray.tel[t].camera.geometry
    display = CameraDisplay(geom)

    assert np.allclose(np.mean(display.datasource.data["xs"], axis=1),
                       geom.pix_x.value)
    assert np.allclose(np.mean(display.datasource.data["ys"], axis=1),
                       geom.pix_y.value)
コード例 #11
0
ファイル: test_bokeh.py プロジェクト: tysaito2008/ctapipe
def test_camera_image(example_event):
    t = list(example_event.r0.tels_with_data)[0]
    geom = example_event.inst.subarray.tel[t].camera
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    colors = intensity_to_hex(image)

    with pytest.raises(ValueError):
        CameraDisplay(None, image)

    c_display = CameraDisplay(geom, image)
    assert (c_display.cdsource.data['image'] == colors).all()
    assert c_display.image_min == 0
    assert c_display.image_max == 2

    image[5] = 5
    colors = intensity_to_hex(image)
    c_display.image = image
    assert (c_display.cdsource.data['image'] == colors).all()
    assert c_display.image_min == image.min()
    assert c_display.image_max == image.max()
コード例 #12
0
def test_camera_display_telescope_frame(example_event, example_subarray):
    """Test we can create a display in telescope frame"""
    from ctapipe.visualization.bokeh import CameraDisplay

    t = list(example_event.r0.tel.keys())[0]
    geom = example_subarray.tel[t].camera.geometry.transform_to(
        TelescopeFrame())
    display = CameraDisplay(geom)

    assert np.allclose(np.mean(display.datasource.data["xs"], axis=1),
                       geom.pix_x.value)
    assert np.allclose(np.mean(display.datasource.data["ys"], axis=1),
                       geom.pix_y.value)
コード例 #13
0
ファイル: test_bokeh.py プロジェクト: ParsonsRD/ctapipe
def test_camera_image(example_event):
    from ctapipe.visualization.bokeh import CameraDisplay, intensity_to_hex

    t = list(example_event.r0.tels_with_data)[0]
    geom = example_event.inst.subarray.tel[t].camera
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    colors = intensity_to_hex(image)

    with pytest.raises(ValueError):
        CameraDisplay(None, image)

    c_display = CameraDisplay(geom, image)
    assert (c_display.cdsource.data['image'] == colors).all()
    assert c_display.image_min == 0
    assert c_display.image_max == 2

    image[5] = 5
    colors = intensity_to_hex(image)
    c_display.image = image
    assert (c_display.cdsource.data['image'] == colors).all()
    assert c_display.image_min == image.min()
    assert c_display.image_max == image.max()
コード例 #14
0
def test_camera_image(example_event, example_subarray):
    from ctapipe.visualization.bokeh import CameraDisplay, intensity_to_hex

    t = list(example_event.r0.tels_with_data)[0]
    geom = example_subarray.tel[t].camera.geometry
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    colors = intensity_to_hex(image)

    with pytest.raises(ValueError):
        CameraDisplay(None, image)

    c_display = CameraDisplay(geom, image)
    assert (c_display.cdsource.data["image"] == colors).all()
    assert c_display.image_min == 0
    assert c_display.image_max == 2

    image[5] = 5
    colors = intensity_to_hex(image)
    c_display.image = image
    assert (c_display.cdsource.data["image"] == colors).all()
    assert c_display.image_min == image.min()
    assert c_display.image_max == image.max()
コード例 #15
0
ファイル: test_bokeh.py プロジェクト: tysaito2008/ctapipe
def test_camera_enable_pixel_picker(example_event):
    t = list(example_event.r0.tels_with_data)[0]
    geom = example_event.inst.subarray.tel[t].camera
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    c_display = CameraDisplay(geom, image)

    c_display.enable_pixel_picker(2)
    assert len(c_display.active_pixels) == 2

    c_display.enable_pixel_picker(3)
    assert len(c_display.active_pixels) == 3
コード例 #16
0
def test_camera_enable_pixel_picker(example_event, example_subarray):
    from ctapipe.visualization.bokeh import CameraDisplay
    t = list(example_event.r0.tels_with_data)[0]
    geom = example_subarray.tel[t].camera.geometry
    n_pixels = geom.pix_x.value.size
    image = np.ones(n_pixels)
    c_display = CameraDisplay(geom, image)

    c_display.enable_pixel_picker(2)
    assert len(c_display.active_pixels) == 2

    c_display.enable_pixel_picker(3)
    assert len(c_display.active_pixels) == 3
コード例 #17
0
def test_camera_display_create():
    from ctapipe.visualization.bokeh import CameraDisplay

    CameraDisplay()
コード例 #18
0
ファイル: test_bokeh.py プロジェクト: tysaito2008/ctapipe
def test_camera_display_create():
    CameraDisplay()