Skip to content
/ VIOLA Public
forked from HBPVIS/VIOLA

Web-based visualization tool for spiking neuronal network simulation data

License

Notifications You must be signed in to change notification settings

soehrl/VIOLA

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

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 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, and, second, you need to start the tool 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:

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.

2. Starting VIOLA

VIOLA runs in a web browser and the preferred browser is Google Chrome.

Start VIOLA from its GitHub Page.
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 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 containing the User Manual and the 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 and are implemented using the Python interface.
Software dependencies for the simulation scripts are summarized together with the tested version numbers below.

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 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 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 above indicate which files need to be uploaded to VIOLA for visualization.

Software dependencies

  • NEST v2.10.0
  • NEURON v7.4
  • Python 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

About

Web-based visualization tool for spiking neuronal network simulation data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 64.2%
  • Python 27.5%
  • HTML 6.2%
  • CSS 1.7%
  • AMPL 0.4%