diff --git a/src/spikeinterface/widgets/base.py b/src/spikeinterface/widgets/base.py index b94167d2b7..26106c2457 100644 --- a/src/spikeinterface/widgets/base.py +++ b/src/spikeinterface/widgets/base.py @@ -47,6 +47,7 @@ def set_default_plotter_backend(backend): }, "ephyviewer": {}, "spikeinterface_gui": {}, + "viewephys": {}, } default_backend_kwargs = { @@ -55,6 +56,7 @@ def set_default_plotter_backend(backend): "ipywidgets": {"width_cm": 25, "height_cm": 10, "display": True, "controllers": None}, "ephyviewer": {}, "spikeinterface_gui": {}, + "viewephys": {}, } diff --git a/src/spikeinterface/widgets/tests/test_widgets.py b/src/spikeinterface/widgets/tests/test_widgets.py index 5366fb864f..a2a167b1d8 100644 --- a/src/spikeinterface/widgets/tests/test_widgets.py +++ b/src/spikeinterface/widgets/tests/test_widgets.py @@ -95,7 +95,7 @@ def setUpClass(cls): cls.sorting_analyzer_sparse.compute("random_spikes") cls.sorting_analyzer_sparse.compute(extensions_to_compute, **job_kwargs) - cls.skip_backends = ["ipywidgets", "ephyviewer", "spikeinterface_gui"] + cls.skip_backends = ["ipywidgets", "ephyviewer", "spikeinterface_gui", "viewephys"] # cls.skip_backends = ["ipywidgets", "ephyviewer", "sortingview"] if ON_GITHUB and not KACHERY_CLOUD_SET: diff --git a/src/spikeinterface/widgets/traces.py b/src/spikeinterface/widgets/traces.py index d5bfe8caa4..ee4c0e4712 100644 --- a/src/spikeinterface/widgets/traces.py +++ b/src/spikeinterface/widgets/traces.py @@ -661,6 +661,21 @@ def plot_ephyviewer(self, data_plot, **backend_kwargs): win.show() app.exec() + def plot_viewephys(self, data_plot, **backend_kwargs): + from viewephys.gui import SpikeInterfaceViewer + import easyqc.qt + from ..preprocessing import depth_order + + dp = to_attr(data_plot) + assert len(dp.recordings) == 1 + + recording = list(dp.recordings.values())[0] + recording = depth_order(recording) + app = easyqc.qt.create_app() + siv = SpikeInterfaceViewer(recording) # TODO dict of recordings + self.siv = siv + app.exec() + def _get_trace_list(recordings, channel_ids, time_range, segment_index, return_scaled=False, times=None): # function also used in ipywidgets plotter