Skip to content

Commit f5fdcb8

Browse files
committed
added statement of need t
1 parent ee3bbdd commit f5fdcb8

File tree

3 files changed

+43
-66
lines changed

3 files changed

+43
-66
lines changed

paper.md

+12-34
Original file line numberDiff line numberDiff line change
@@ -20,56 +20,34 @@ bibliography: paper.bib
2020

2121
---
2222

23+
2324
# Summary
2425

25-
SNUB is a tool for exploring time-series data, such as neural
26-
recordings, behavioral videos, temperature, movement or other sensor signals,
27-
and higher-level annotations derived from such data. The interface is
28-
divided into synchronized windows that each show a different data stream.
29-
The linked data views allow users to quickly inspect the relationships between
30-
experimental phenomena, such as the behaviors that occur during a particular
31-
pattern of neural activity (\autoref{fig:screenshot}).
26+
A core goal of neuroscience is to discover temporal patterns in behavior and neurophysiology. Though a variety of tools exist to characterize these relationships, there is still no substitute for direct inspection as a way to notice unexpected patterns and generate new hypotheses. To facilitate this process, we have developed the Systems Neuro Browser (SNUB), a graphical user interface for exploring time-series data. SNUB is a flexible, general-purpose tool that allows users to build a dashboard of synchronized data views, including neural recordings, behavioral videos, and annotations derived from these data.
27+
28+
29+
# Statement of need
30+
31+
Direct inspection of behavior and neurophysiology recordings is hard because the data are typically high-dimensional, come in a variety of modalities (such as raw video, pose tracking, spike trains, calcium traces, etc.) with different sampling rates and methods of visualization. SNUB lowers the activation energy for data exploration by integrating these data streams into a single easy-to-navigate interface. The interface is divided into synchronized windows that each show a different data stream. The linked data views allow users to quickly inspect the relationships between experimental phenomena, such as the behaviors that occur during a particular pattern of neural activity (\autoref{fig:screenshot}).
3232

3333
![Screenshot from SNUB.\label{fig:screenshot}](docs/media/screenshot.png)
3434

35-
We provide dedicated widgets and loading functions for exploring
36-
raw video, 3D animal pose, behavior annotations, electrophysiology recordings,
37-
and calcium imaging data - either as a raster or as a super-position of
38-
labeled regions of interest (ROIs). More broadly, SNUB can dislay any data
39-
that takes the form of a heatmap, scatter plot, video, or collection of
40-
named temporally-varying signals.
35+
We provide dedicated widgets and loading functions for exploring raw video, 3D animal pose, behavior annotations, electrophysiology recordings, and calcium imaging data - either as a raster or as a super-position of labeled regions of interest (ROIs). More broadly, SNUB can dislay any data that takes the form of a heatmap, scatter plot, video, or collection of named temporally-varying signals.
4136

42-
In addition to the front-end GUI, we include a library of functions for
43-
ingesting raw data and saving it to a format that is readable by the SNUB
44-
viewer. The following code, for example, creates a project with paired
45-
electrophysiology and video data.
37+
In addition to the front-end GUI, we include a library of functions for ingesting raw data and saving it to a format that is readable by the SNUB viewer. The following code, for example, creates a project with paired electrophysiology and video data.
4638

4739
```
4840
snub.io.create_project(project_directory, duration=1800)
4941
snub.io.add_video(project_directory, 'path/to/my_video.avi', name='IR_camera')
5042
snub.io.add_splikeplot(project_directory, 'my_ephys_data', spike_times, spike_labels)
5143
```
5244

53-
SNUB is a flexible general-purpose tool that complements more specialized
54-
packages such as rastermap [@rastermap] and Bento [@bento]. The rastermap
55-
interface, for example, is hard-coded for the display of neural activity
56-
rasters, ROIs and 2D embeddings of neural activity. Bento is hard-coded for
57-
the display of neural activity rasters, behavioral videos and behavioral
58-
annotations. SNUB can reproduce either of these configurations and is
59-
especially useful when one wishes to include additional types of data
60-
or more directly customize the way that data is rendered.
45+
SNUB is a flexible general-purpose tool that complements more specialized packages such as rastermap [@rastermap] and Bento [@bento]. The rastermap interface, for example, is hard-coded for the display of neural activity rasters, ROIs and 2D embeddings of neural activity. Bento is hard-coded for the display of neural activity rasters, behavioral videos and behavioral annotations. SNUB can reproduce either of these configurations and is especially useful when one wishes to include additional types of data or more directly customize the way that data is rendered.
6146

62-
The graphics in SNUB are powered by vispy [@vispy]. SNUB includes wrappers
63-
for several dimensionality reduction methods, including rastermap [@rastermap]
64-
for ordering raster plots and UMAP [@umap] for 2D scatter plots. Fast video
65-
loading is enabled by vidio [@vidio].
47+
The graphics in SNUB are powered by vispy [@vispy]. SNUB includes wrappers for several dimensionality reduction methods, including rastermap [@rastermap] for ordering raster plots and UMAP [@umap] for 2D scatter plots. Fast video loading is enabled by vidio [@vidio].
6648

6749
# Acknowledgements
6850

69-
We are grateful to Mohammed Osman for initial contributions to the 3D keypoint
70-
visualization tool. CW is a Fellow of The Jane Coffin Childs Memorial Fund for
71-
Medical Research. SRD is supported by NIH grants U19NS113201, RF1AG073625,
72-
R01NS114020, the Brain Research Foundation, and the Simons Collaboration on
73-
the Global Brain.
51+
We are grateful to Mohammed Osman for initial contributions to the 3D keypoint visualization tool. CW is a Fellow of The Jane Coffin Childs Memorial Fund for Medical Research. SRD is supported by NIH grants U19NS113201, RF1AG073625, R01NS114020, the Brain Research Foundation, and the Simons Collaboration on the Global Brain.
7452

7553
# References

setup.py

+30-31
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,40 @@
11
import setuptools
22

3-
with open("README.md", 'r') as f:
3+
with open("README.md", "r") as f:
44
long_description = f.read()
55

66
setuptools.setup(
7-
name='snub',
8-
version='0.0.3',
9-
author='Caleb Weinreb',
10-
author_email='[email protected]',
11-
description='Systems neuro browser',
7+
name="snub",
8+
version="0.0.3",
9+
author="Caleb Weinreb",
10+
author_email="[email protected]",
11+
description="Systems neuro browser",
1212
include_package_data=True,
1313
packages=setuptools.find_packages(),
1414
classifiers=[
15-
'Programming Language :: Python :: 3',
16-
'Operating System :: OS Independent'
15+
"Programming Language :: Python :: 3",
16+
"Operating System :: OS Independent",
1717
],
18-
entry_points={
19-
'console_scripts':[
20-
'snub = snub.gui.main:run']
21-
},
22-
python_requires='>=3.8',
23-
install_requires=['PyQt5',
24-
'numpy',
25-
'scikit-learn',
26-
'tqdm',
27-
'cmapy',
28-
'interlap',
29-
'numba',
30-
'vispy',
31-
'imageio',
32-
'imageio-ffmpeg',
33-
'umap-learn',
34-
'rastermap',
35-
'ipykernel',
36-
'pyqtgraph',
37-
'networkx',
38-
'opencv-python-headless',
39-
'vidio>=0.0.3'],
40-
url='https://github.com/calebweinreb/SNUB'
18+
entry_points={"console_scripts": ["snub = snub.gui.main:run"]},
19+
python_requires=">=3.8",
20+
install_requires=[
21+
"PyQt5",
22+
"numpy",
23+
"scikit-learn",
24+
"tqdm",
25+
"cmapy",
26+
"interlap",
27+
"numba",
28+
"vispy",
29+
"imageio",
30+
"imageio-ffmpeg",
31+
"umap-learn",
32+
"rastermap",
33+
"ipykernel",
34+
"pyqtgraph",
35+
"networkx",
36+
"opencv-python-headless",
37+
"vidio>=0.0.3",
38+
],
39+
url="https://github.com/calebweinreb/SNUB",
4140
)

snub/gui/stacks/track.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class TrackStack(Stack):
1515
def __init__(self, config, selected_intervals):
1616
super().__init__(config, selected_intervals)
1717
self.bounds = config["bounds"]
18-
self.center_playhead_policy = config["center_playhead"]
18+
self.track_playhead_policy = config["track_playhead"]
1919
self.zoom_gain = config["zoom_gain"]
2020
self.min_range = config["min_range"]
2121
self.size_ratio = config["tracks_size_ratio"]

0 commit comments

Comments
 (0)