Skip to content

Calcium Imaging data visualization server implemented with Bokeh and Flask

License

Notifications You must be signed in to change notification settings

boyuan99/CIVisServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CIVisServer

CIVisServer is a Calcium Imaging data visualization server built with Bokeh and Flask. It provides an interactive web-based interface for visualizing and analyzing calcium imaging data, facilitating research and data exploration.

Table of Contents

Features

  • Interactive Visualizations: Utilize Bokeh for dynamic and responsive data visualizations.
  • Web Interface: Powered by Flask, offering an accessible web interface for data interaction.
  • Modular Architecture: Supports multiple visualization modules such as labelers, trajectories, connections, rasters, and place finders.
  • Customizable Configuration: Easily configure data paths and server settings through a JSON file.
  • Scalable Server: Capable of handling multiple Bokeh applications concurrently.

Installation

Prerequisites

  • Python: Version 3.9 or higher
  • pip: Python package installer

Clone the Repository

git clone https://github.com/boyuan99/CIVisServer.git
cd CIVisServer

Create a Conda Environment

conda env create -f environment.yaml
conda activate civis

Note: The environment.yaml file includes the command to install your package in editable mode (pip install -e .). This means that after activating the environment, your package is already set up for development.

Setup

  1. Configuration File:

    Use the provided civis/config.example.json as a template to create your local config.json. This file includes paths to necessary data directories.

    cp civis/config.example.json civis/config.json
  2. Edit Configuration:

    Open civis/config.json and update the paths to match your local data directories:

    {
      "ProcessedFilePath": "path/to/ProcessedData/",
      "VirmenFilePath": "path/to/VirmenData/",
      "LabelsPath": "path/to/ProcessedData/",
      "ElecPath": "path/to/ElecData/"
    }

    Note: Ensure all paths are absolute or relative to the project root and that they point to valid directories containing your data.

Running the Server

Default Ports

By default, running the server will open two ports:

  • Flask Server: 8000
  • Bokeh Server: 5006

Start the Server

Execute the following command to start the CIVisServer:

civis

Custom Ports

To specify custom ports for the Flask and Bokeh servers, use the --flask-port and --bokeh-port flags:

civis --flask-port 8000 --bokeh-port 5006

Accessing the Application

Once the server is running, open your web browser and navigate to:

http://localhost:8000

You will see the home page, from which you can access various visualization modules such as Labeler, Trajectory, Connection, Raster, and Place applications.

About

Calcium Imaging data visualization server implemented with Bokeh and Flask

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •