Skip to main content

A tool to visualize the results of 1D CRISPR screens

Project description

screenviz

A CRISPR screen visualization toolkit.

Installation

The easiest way to get started with screenviz is to use uv

uv tool install screenviz
screenviz --help

Or if you prefer using just pip

pip install screenviz

Usage

This program is meant to be run from the commandline and will generate interactive visualizations for your CRISPR screen results.

Quality Control

This is used to check the quality of your screen mapping. It generates visualizations to inspect various quality control metrics of your screen. The input of this subcommand is a tsv file with the following table structure: [sgrna, gene, sample1, sample2, ...]. This is the output of sgcount used to generate the mapping.

It will create a webserver that is tied to your terminal and will output a link to the visualizations which you can open in your browser.

screenviz qc -i mapping.tsv

Results

This is used to generate a single interactive integrated visualization suite of your screen results. It will generate visualizations for the sgRNA and gene level results.

The input of this subcommand are two tsv files which are output of crispr_screen: *.sgrna_results.tsv and *.gene_results.tsv.

It will create a webserver that is tied to your terminal and will output a link to the visualizations which you can open in your browser.

screenviz results -s results.sgrna_results.tsv -g results.gene_results.tsv

Gene Enrichment

To explore the gene-level enrichment of your analysis - specifically the classic volcano plot (log-fold-change on the x-axis and negative log p-value on the y-axis) - you can use the screenviz gene subcommand:

screenviz gene -i results.gene_results.tsv

If your screen result is an output of crispr_screen, the defaults of the program will immediately generate a visualization which will be written to an *.html file on your computer. You can open this file in your favorite browser and explore the results interactively there.

For a better visualization, pass in the .yaml configuration file produced from your crispr_screen run. This will automatically determine if RRA or INC was used and show appropriate thresholds.

screenviz gene -i results.gene_results.tsv -c results.screenviz.yaml

If your screen result is an output of a different program, you will need to tell screenviz what the names of the columns in your data represent.

If your result is from MAGeCK you can do the following:

# Left side of the volcano
screenviz gene \
    -i sample1.gene_summary.txt \
    -g "id" \
    -f "neg|lfc" \
    -p "neg|fdr" \
    -t "neg|fdr"

# Right side of the volcano
screenviz gene \
    -i sample1.gene_summary.txt \
    -g "id" \
    -f "pos|lfc" \
    -p "pos|fdr" \
    -t "pos|fdr"

Check out what the arguments are with the help command:

screenviz gene --help

sgRNA Enrichment

To explore the sgrna-level enrichment of your analysis - specifically the classic volcano plot (log-fold-change on the x-axis and negative log p-value on the y-axis) - you can use the screenviz sgrna subcommand:

screenviz sgrna -i results.sgrna_results.tsv

If your screen result is an output of crispr_screen, the defaults of the program will immediately generate a visualization which will be written to an *.html file on your computer. You can open this file in your favorite browser and explore the results interactively there.

If your screen result is an output of a different program, you will need to tell screenviz what the names of the columns in your data represent.

If your result is from MAGeCK you can do the following:

screenviz sgrna \
    -i sample1.sgrna_summary.txt \
    -g "Gene" \
    -f "LFC" \
    -p "FDR" \
    -t "FDR"

Comparison

To compare the results of two different analysis methods you can use the screenviz compare subcommand

screenviz compare \
    -i results_a.gene_results.tab \
    -I results_b.gene_results.tab

This will generate a scatter plot to compare the calculated FDR values of two different results.

To compare between crispr_screen and MAGeCK one can do:

# compare depleted genes
screenviz compare \
    -i results.gene_results.tsv \
    -I sample1.gene_summary.txt \
    -x fdr_low \
    -X "neg|fdr" \
    -m gene \
    -M id \
    -t fdr_low \
    -T "neg|fdr"

# compare enriched genes
screenviz compare \
    -i results.gene_results.tsv \
    -I sample1.gene_summary.txt \
    -x fdr_high \
    -X "pos|fdr" \
    -m gene \
    -M id \
    -t fdr_high \
    -T "pos|fdr"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

screenviz-0.2.9.tar.gz (22.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

screenviz-0.2.9-py3-none-any.whl (32.5 kB view details)

Uploaded Python 3

File details

Details for the file screenviz-0.2.9.tar.gz.

File metadata

  • Download URL: screenviz-0.2.9.tar.gz
  • Upload date:
  • Size: 22.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.21

File hashes

Hashes for screenviz-0.2.9.tar.gz
Algorithm Hash digest
SHA256 16790ddccb0dd058a1ee35e97b6941286d733dccc2ca09245608cf30f6a31143
MD5 25f3ea0a19eea0b323034317a408b4e5
BLAKE2b-256 83c244b288611d7ad6d1bbfba5416b03d73ebf2019a749653c11eb6899126c80

See more details on using hashes here.

File details

Details for the file screenviz-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: screenviz-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 32.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.21

File hashes

Hashes for screenviz-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 da1f25dd12bd571cd08ca3530f572de6abb4919316738b483db66076c117774f
MD5 9f2be1fc791d3709ecc3d2d81bdf78fd
BLAKE2b-256 fbf6885a0971100c9453b12cb0dbd2deaa097bf397600edf5def58ad0b90f74b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page