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.7.tar.gz (22.9 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.7-py3-none-any.whl (32.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for screenviz-0.2.7.tar.gz
Algorithm Hash digest
SHA256 952cc4f347d430d81f9f6b39393d27fa72ea0d036285dd64c58f3443b145db0f
MD5 ed88ab4c422d836cfd8a907be5b73cd7
BLAKE2b-256 1e7fcbc0c7765c95eb1c9c110a55a569eabe08b84f2f11a658f73b3d59026c05

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for screenviz-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d74f595c72fbc63bb8526d0988b2783a4e934d19ba2561cca2919205f30496fd
MD5 4bdc7bf4f2f45775b0f4219458f8c2c8
BLAKE2b-256 7c8d0eb98a37a6c1893c0f09a5cebc54a1de8c843a97db32cfbcd6623f2fa74b

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