Perform morphology measurement on neuron SWC files
Project description
nGauge
nGauge
is a Python library which provides a collection of tools for the measurement, quantification, and visualization of neuron morphology. The library structure makes automation of data analysis pipelines easier, leading to faster and more reproducible results.
Quickstart
> pip install ngauge
> neuron = ngauge.Neuron.from_swc('file.swc')
> neuron
Tutorials
We have prepared several tutorials provided as either markdown manuals or jupyter notebook documents which cover the usage of nGauge in the GitHub folder labeled "tutorials":
- Basic Usage
- Builds on the "Quickstart" example above.
- Cell Type PCA
- Provides the complete code to replicate Figure 5 from the nGauge manuscript. In short, this involves running PCA on the quantification from two collections of cells.
There are also a collection of examples where are specific to using nGauge with Blender:
- Installing inside of Blender on Linux
- See below for more details on installing nGauge with Blender.
- Installing inside of Blender on Mac
- Rendering a Neuron in Blender
- Provides an example of rendering a small neural network inside of Blender with nGauge.
- Rendering microscopy data within Blender
- Provides an example of how to volumetrically render microscopy data, as was used in Figure 8C of our manuscript.
- WARNING: This tutorial requires a powerful workstation and GPU due to the computational complexity of the ray tracing method used.
Installation
Prerequisites
nGauge should be compatible with any Python distribution, however, all code has been tested and developed
using the Anaconda Python package. It is recommended that Anaconda be used if possible, as it includes
serveral packages (numpy
, etc.) that are guaranteed to work with nGauge.
Recommended Method (pip
)
If you have pip
and python 3.x
installed already, nGauge can be installed by running the following command
in the terminal: pip install ngauge
. This will install the current release version of nGauge from the
PyPi repository: https://pypi.org/project/nGauge/.
To install from source:
To install the development (source) version of nGauge to your local computer, follow these steps:
- Clone this GitHub repository:
git clone https://github.com/Cai-Lab-at-University-of-Michigan/nGauge.git
- Change directory into the newly downloaded folder:
cd nGauge
- Run the
pip
local installation script:pip install .
Using with Blender
Additional steps are required to utilize the Blender features of nGauge. First, blender must be installed using the directions from the developers (https://www.blender.org/download/). Only Blender versions newer than 2.8 are compatible due to changes in the Python API that nGauge utilizes.
In the tutorials folder, instructions to install and configure Blender with nGauge is provided as "install_blender_ubuntu". If you do not use Ubuntu, please see below for alternative install options.
By default, many versions of Blender support packages installed to the system Python
library. In this case, no additional steps are required for setup.
For Blender versions which do not share Python with the system-level install (such
as Windows and snap
versions), nGauge can be used with one of these two methods:
- If the Python version of the system and Blender are the same, the system
library path can be appended to the Blender path by appending this to the runtime path
(
import sys; sys.path += ['<location>']
). - It is also possible to directly install packages to the Blender Python libary
using
pip
, however support for this install method can not be provided.
- For example, please see: https://blender.stackexchange.com/questions/56011/how-to-install-pip-for-blenders-bundled-python.
Citation
nGauge has been submitted for publication, but the preprint is currently available on bioRxiv: https://www.biorxiv.org/content/10.1101/2021.05.13.443832v2.abstract
nGauge: Integrated and extensible neuron morphology analysis in Python
Logan A Walker, Jennifer S Williams, Ye Li, Douglas H Roossien, Nigel S Michki, Dawen Cai
bioRxiv 2021.05.13.443832; doi: https://doi.org/10.1101/2021.05.13.443832
Contact
- Logan Walker loganaw@umich.edu
- Dawen Cai dwcai@umich.edu
License
This code is licensed under the GNU General Public License v3.0, a copy of which is available in LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nGauge-0.1.5.tar.gz
.
File metadata
- Download URL: nGauge-0.1.5.tar.gz
- Upload date:
- Size: 34.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a0f1988a6ada638ce580bda031eb00190967276277695f8560b0441796045ebd |
|
MD5 | 61e928462d55bea9e431fbe1b27091f0 |
|
BLAKE2b-256 | 22988c6d396c8fd1c5e75f6c2018fb0de2ee1423a8d1baf3ed3e1a3ed2726ca5 |
File details
Details for the file nGauge-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: nGauge-0.1.5-py3-none-any.whl
- Upload date:
- Size: 34.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3419755b510d459abc3263a08b76a8d7ea344164c2c281710ffc96ea53792cb |
|
MD5 | 248c6e44d73f851d0e4bba535d855cd8 |
|
BLAKE2b-256 | 8a75b02c44d5ab592630fdbd35a25d156e805925f0b9c5a3cd33154cdc13f808 |