Giter Site home page Giter Site logo

ggraham / ggsashimi Goto Github PK

View Code? Open in Web Editor NEW

This project forked from guigolab/ggsashimi

0.0 0.0 0.0 10.5 MB

Command-line tool for the visualization of splicing events across multiple samples

License: GNU General Public License v3.0

Python 97.67% Shell 1.30% Dockerfile 1.03%

ggsashimi's Introduction

ggsashimi

Build Status

Command-line tool for the visualization of splicing events across multiple samples

Installation
Dependencies
Download docker image
Build docker image
Use docker image
Usage
Galaxy
Cite ggsashimi

image

Installation

The ggsashimi script can be directly downloaded from this repository:

wget https://raw.githubusercontent.com/guigolab/ggsashimi/master/sashimi-plot.py

Change the execution permissions:

chmod u+x sashimi-plot.py

Provided all dependencies are already installed (see below), you can directly execute the script:

./sashimi-plot.py --help

To download the entire repository, which includes the dockerfile and example files:

git clone https://github.com/guigolab/ggsashimi.git

Dependencies

In order to run ggsashimi the following software components and packages are required:

  • python (2.7 or 3)
  • samtools (>=1.3)
  • R (>=3.3)
    • ggplot2 (>=2.2.1)
    • data.table (>=1.10.4)
    • gridExtra (>=2.2.1)

Additional required R packages grid and gtable should be automatically installed when installing R and ggplot2, respectively. Package svglite (>=1.2.1) is also required when generating output images in SVG format.

To avoid dependencies issues, the script is also available through a docker image.

Download docker image

A public ggsashimi Docker image is available in the Docker Hub and can be downloaded as follows:

docker pull guigolab/ggsashimi

Alternatively, we provide the Dockerfile if you want to build your local docker image, although most users will not need it.

Build docker image (optional)

After downloading the repository, move inside the repository folder:

cd ggsashimi

To build the docker image run the following command:

docker build -f docker/Dockerfile -t guigolab/ggsashimi .

This can take several minutes.

Use docker image

Once the image is downloaded or built, to execute ggsashimi with docker:

docker run guigolab/ggsashimi --help

Because the image is used in a docker container which has its own file system, to use the program with local files, a host data volume needs to be mounted.

As an example, you can run this command from the main repository folder:

docker run -w $PWD -v $PWD:$PWD guigolab/ggsashimi -b examples/input_bams.tsv -c chr10:27040584-27048100

The '-w' option sets the working directory inside the container to the current directory. The '-v' option mounts the current working directory and all child folders inside the container to the same path (host_path:container_path).

If your files are in another folder, for example the annotation file is stored in a different folder then the one containing the bam file, you can mount extra folders like this:

f="$DIR/annotation.gtf"
docker run -w $PWD -v $PWD:$PWD -v $DIR:$DIR guigolab/ggsashimi -b examples/input_bams.tsv -c chr10:27040584-27048100 -g $f

You can even mount a single file:

docker run -w $PWD -v $PWD:$PWD -v $f:$f guigolab/ggsashimi -b examples/input_bams.tsv -c chr10:27040584-27048100 -g $f

Usage

Execute the script with --help option for a complete list of options.
Sample data and usage examples can be found at examples

Galaxy

Thanks to ARTbio, now a Galaxy wrapper for ggsashimi is available at the Galaxy ToolShed.

Cite ggsashimi

If you find ggsashimi useful in your research please cite the related publication:

Garrido-Martín, D., Palumbo, E., Guigó, R., & Breschi, A. (2018). ggsashimi: Sashimi plot revised for browser-and annotation-independent splicing visualization. PLoS computational biology, 14(8), e1006360.

ggsashimi's People

Contributors

emi80 avatar dgarrimar avatar abreschi avatar ggraham avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.