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
The ggsashimi
script can be directly downloaded from this repository:
wget https://raw.githubusercontent.com/guigolab/ggsashimi/master/ggsashimi.py
Change the execution permissions:
chmod u+x ggsashimi.py
Provided all dependencies are already installed (see below), you can directly execute the script:
./ggsashimi.py --help
To download the entire repository, which includes the dockerfile and example files:
git clone https://github.com/guigolab/ggsashimi.git
In order to run ggsashimi
the following software components and packages are required:
- python (2.7 or 3)
- pysam (>=0.10.0)
- 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.
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.
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.
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
Execute the script with --help
option for a complete list of options.
Sample data and usage examples can be found at examples
Debug mode allows to run ggsashimi
without producing any graphical output. It creates an Rscript
file in the current working folder, containing all the R commands to generate the plot. It can be useful when reporting bugs or trying to debug the program behavior. Debug mode can be enabled by setting the environment variable GGSASHIMI_DEBUG
when running the script, e.g.:
# export the environment variable
$ export GGSASHIMI_DEBUG=yes
$ ggsashimi.py -b ...
or
# set the environment variable inline
$ GGSASHIMI_DEBUG=yes ggsashimi.py -b ...
Thanks to ARTbio, now a Galaxy wrapper for ggsashimi
is available at the Galaxy ToolShed.
If you find ggsashimi
useful in your research please cite the related publication: