https://github.com/hbpvis/viola
Web-based visualization tool for spiking neuronal network simulation data
https://github.com/hbpvis/viola
Last synced: 9 months ago
JSON representation
Web-based visualization tool for spiking neuronal network simulation data
- Host: GitHub
- URL: https://github.com/hbpvis/viola
- Owner: HBPVIS
- License: gpl-2.0
- Created: 2016-01-13T07:56:54.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2018-11-27T11:05:11.000Z (over 7 years ago)
- Last Synced: 2023-10-25T18:41:03.324Z (over 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 15.5 MB
- Stars: 6
- Watchers: 9
- Forks: 6
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VIOLA
VIOLA (VIsualization Of Layer Activity) is an interactive, web-based tool
to visualize activity data in multiple 2D layers such as
the simulation output of neuronal networks with 2D geometry.
A usage example demonstrates the visualization of spike data resulting from a
[NEST](http://nest-simulator.org) simulation of a spatially structured
point-neuron network with excitatory and inhibitory neuron populations and an
external stimulus.
## Getting started
Two steps are necessary to run the visualization:
first, you need to [get test data](#1-getting-test-data), and, second, you need
to [start the tool](#2-starting-viola) and load the data.
### 1. Getting test data
Spatially resolved time series data to be visualized with VIOLA can have two
different formats:
* **raw:** spike times associated with spatial locations of spiking neurons
* **preprocessed:** spatially and temporally binned spike data including LFP
signals
We have prepared one data set of each format that can be downloaded here:
* [RawData.zip](https://hbpvis.github.io/VIOLA/downloads/RawData.zip)
* [PreprocessedData.zip](https://hbpvis.github.io/VIOLA/downloads/PreprocessedData.zip)
(recommended to start with for testing out VIOLA)
Extract the archived files, e.g., using `unzip PreprocessedData.zip`.
Each data set contains text files with the data to be visualized and a
corresponding configuration file for VIOLA:
#### Configuration files
raw | preprocessed
---------------------- | -----------------
config_raw.json | config_proc.json
#### Data files
raw | preprocessed
---------------------- | -----------------
spikes-0.gdf | binned_sprates_rs_EX.dat
spikes-1.gdf | binned_sprates_rs_IN.dat
spikes-2.gdf | binned_sprates_rs_STIM.dat
neuron_positions-0.dat | LFPdata.lfp
neuron_positions-1.dat |
neuron_positions-2.dat |
Alternatively, you can generate test data yourself as described in
[Generating test data](#generating-test-data-optional).
### 2. Starting VIOLA
VIOLA runs in a web browser and the preferred browser is
[Google Chrome](https://www.google.de/chrome).
Start VIOLA from its [GitHub Page](http://hbpvis.github.io/VIOLA).
Note that this version of the tool may differ from the current master branch of
this repository.
To get the latest version, you can clone the repository (e.g.,
`git clone https://github.com/HBPVIS/VIOLA.git`),
navigate to the directory **VIOLA**, and open the contained file index.html in
the browser.
Upon startup, VIOLA opens the **Setup Page** to configure the visualization for
a specific data set.
Just upload the configuration file (config_proc.json for preprocessed data), and
then click the button **Setup visualization** to get to the **Main Page**.
Using the **Upload Panel** to the left, you can upload all data files (see the
[Tables](#configuration-files) above) to be visualized:
either by dragging and dropping the files to the blue box or by opening a file
explorer with the corresponding button.
If the background color of the field for a data file changes from red to green,
the upload has been successful.
As soon as all files are uploaded, close the upload panel by clicking the **x**
at its top right corner.
Press **Play** in the control bar that is located at the bottom to start the
visualization.
For further documentation, please refer to the
[VIOLA Wiki](https://github.com/HBPVIS/VIOLA/wiki) containing the
[User Manual](https://github.com/HBPVIS/VIOLA/wiki/VIOLA-User-Manual)
and the
[Developer Manual](https://github.com/HBPVIS/VIOLA/wiki/VIOLA-Developer-Manual).
## Generating test data (optional)
The scripts to simulate a spatially structured network of spiking point-neurons
are in the directory **test_data** in this repository.
You can clone the repository, e.g., with
`git clone https://github.com/HBPVIS/VIOLA.git`.
Simulations rely on the simulator [NEST](http://nest-simulator.org) and are
implemented using the [Python](http://www.python.org) interface.
Software dependencies for the simulation scripts are summarized together with
the tested version numbers [below](#software-dependencies).
For generating **raw data**, run
python topo_brunel_alpha_nest.py out_raw
The created directory **out_raw** contains configuration and data files for raw
data and the [Tables](#configuration-files) above indicate which files need to
be uploaded to VIOLA for visualization.
Having generated raw data, you can generate **preprocessed data** by running
python nest_preprocessing.py out_raw out_proc
To speed up the preprocessing step, you can also use OpenMPI und run instead
mpirun -np 2 python nest_preprocessing.py out_raw out_proc
Afterwards, generate LFP data. You need to compile the
[NEURON](https://neuron.yale.edu) model once on your system by
executing
nrnivmodl alphaisyn.mod
and then you can run
python fake_LFP_signal.py out_raw out_proc
The created directory **out_proc** contains configuration and data files for
preprocessed data and the [Tables](#configuration-files) above indicate which
files need to be uploaded to VIOLA for visualization.
### Software dependencies
* [NEST](http://nest-simulator.org) v2.10.0
* [NEURON](https://neuron.yale.edu) v7.4
* [Python](http://www.python.org) v2.7.11
* numpy v1.10.4
* matplotlib v2.0.2
* scipy v0.17.0
* h5py v2.5.0
* mpi4py v2.0.0
* LFPy v2.0.0
* quantities v0.12
## Authors
* Corto Carde, Johanna Senk, Espen Hagen, Benjamin Weyers