Access a suite of analysis apps by clicking on the menu (or type command-K to open)

The first step in using the Query App to compute connections with your gene expression data is to assign a name to your query. Results will be stored in your Analysis History after your query is submitted.

Enter an up-regulated gene of interest, hit enter, and type in subsequent genes in the set you would like to query. You may also have down-regulated genes of interest. They can be entered in the box to the right.

Hit submit and the query algorithm will find connections between your genes of interest and perturbagens in CMap that have signatures most similar to your query. Data are generated in approximately 5 minutes and will be stored in your Analysis History.

The L1000 assay directly measures or infers the expression levels of 12,328 genes. By evaluating the current statistical model against a large compendium of RNA-Seq profiles from over 100 tissues from the GTEx consortium, we have identified a subset of 10,174 genes that are either measured or well inferred. This subset is known as the Best INferred Gene (BING) space. The Query App uses BING space to compute similarities between users' gene sets and the gene expression signatures in the CMap database. Each user entry is therefore mapped into one of the three following categories.
Invalid gene: Not a valid HUGO symbol or Entrez ID, and therefore not used in the query.
Valid gene: A valid HUGO symbol or Entrez ID that is also part of BING space, and therefore is used in the query.
Valid but not used in query: A valid HUGO symbol or Entrez ID that is not part of BING space, and therefore is not used in the query.

Click on a perturbagen in this table to see a CLUE Card that contains all of the information available for this perturbagen. You can also select any compound in the table to query connections with all other compounds in Touchstone. Clicking on Detailed List to view connections in a table, or click Heatmap to see connections in a matrix powered by the Morpheus App.

Filter the Touchstone data table by selecting perturbagen type or perturbational Classes of interest.

Average transcriptional impact

Impact is assessed as a transcriptional activity score, which is calculated as a mean value of median replicate correlation and median signature strength of a perturbagen across multiple cell lines and doses. The score describes a perturbagen’s transcriptional activity, relative to all other perturbagens, as derived from its replicate reproducibility and magnitude of differential gene expression.

PCTCCi =  rank( median( CCi ) )N

PCTSSi =  rank( median( SSi ) )N



TASi is the transcriptional impact score for the i-th perturbagen

PCTCCi is the percentile, relative to all other perturbagens, of the i-th perturbagen’s median replicate correlation coefficient (CC) across all of its signatures

PCTSSi is the percentile, relative to all other perturbagens, of the i-th perturbagen’s signature strength (SS) across all of its signatures

N is the total number of perturbagens

Signature diversity

Thick black bars signify Transcriptional Activity Scores greater than or equal to 0.5; thinner black bars denote scores less than 0.5. Absence of a bar means no data available. Colored lines (chords) signify similar connectivity scores between cell lines; red for positive connectivity scores of 80-100 (pale to intense color according to the score); blue for negative connectivity. Chords are only shown when TAS scores are > 0.5; thus absence of a chord either means that the perturbagen TAS score is very low, or that no data is available. Chords for individual cell lines can be isolated from the rest of the figure by hovering over the cell line name.

Baseline expression of this gene in each cell line is represented as a z-score (top numbers). Scores were calculated using robust z-score formula:

z-scorei = ( xi - median( X ) )/( MAD( X ) * 1.4826 ),


xi is expression value of a given gene in i-th cell line

X = [ x1, x2 ... xn ] is a vector of expression values for a given gene across n cell lines

MAD( X ) is a median absolute deviation of X

1.4826 is a constant to rescale the score as if the standard deviation of X instead of MAD was used

Median and MAD expression values were calculated using RNA-Seq profiles from a total of 1022 cell lines, comprising data from the Cancer Cell Line Encyclopedia (CCLE; Barretina, et al.) and cell lines nominated by the CMap team. Plots show z-score values only for the core LINCS lines used by CMap in L1000 experiments. Light red or light blue regions indicate positive or negative outlier expression, respectively, of the gene relative to the other lines shown; z-score of a positive outlier in the corresponding cell line is in dark red and a negative outlier is in dark blue.

Summary class connectivity shows a boxplot that summarizes the connectivity of a class. Each data point, shown as a light gray dot, represents the median value of connectivity of one member to the other class members. (This corresponds to the median for each row, excluding the main diagonal, in the heatmap shown below.) The box is the distribution of those data points, where the box boundary represents the interquartile range, the vertical line within the box is the median, and the whiskers reflect the minimum and maximum values of the data (exclusive of extreme outliers, which may appear beyond the whiskers).

Connectivity between members of class is a standard heat map of the connectivity scores, summarized across cell lines, between members of the class, where dark red represents the highest positive scores and deep blue the highest negative scores. Individual scores are revealed to the left below the map by hovering over each cell of the map.

Class inter-cell line connectivity is a plot of the median (black line) and Q25-Q75 connectivity scores (blue area around black line) for each cell line as well as the summary scores across cell lines. In some cases perturbations have not been tested in every cell line; the absence of data is indicated by a “0” for that cell line. The example shown reveals that these estrogen agonists show the strongest connectivity to each other in MCF7, a human breast cancer cell line that expresses the estrogen receptor.

Profile status

Colored portion of top bar indicates the Broad assays in which this compound has been profiled.

L1000 cell/dose coverage

For compounds profiled by L1000, cell lines and dose range for which signatures are available are indicated by dark gray bars (lighter gray bar indicates no data is available for that cell line/dose combination). A bar displayed one row above the 10 uM row indicates that doses higher than 10uM were tested. The 6 rows correspond to 6 canonical doses: 20 nM, 100 nM, 500 nM, 1 uM, 2.5 uM, and 10 uM. (In some cases non-canonical doses were tested; these are rounded to the nearest canonical dose for the purpose of this display. For example, if the dose tested was 3.33uM, the 2.5uM bar is shown in dark gray here.)


Third Party Software Libraries used in CLUE

The CLUE platform was developed by researchers at the Broad Institute. We gratefully acknowledge a number of code libraries that are used in CLUE.

Python Package Libraries

NameDescriptionVersionLicense Type
BeautifulSoupPython library for pulling data out of HTML and XML files.3.2.1MIT
behavebehave is behaviour-driven development, Python style.1.2.3BSD
BioPythonTools for biological computation1.59Biopython License
blessingsA thin, practical wrapper around terminal coloring, styling, and positioning1.5MIT
botoPython interface to Amazon Web Services2.22.1MIT
chemspipyA simple (and probably ropey) Python wrapper for the ChemSpider API1CC0 1.0 Universal
fuzzywuzzyFuzzy String Matching in Python0.2MIT
htmlSimple, elegant HTML, XHTML and XML generation.1.13BSD
jinja2Jinja2 is a full featured template engine for Python2.7.2BSD
matplotlibPython 2D plotting library1.3.1PSF
mechanizeStateful programmatic web browsing in Python0.2.5BSD or ZPL 2.1
networkxFor the creation, manipulation, and study of the structure, dynamics, and functions of complex networks1.8.1BSD
numpyNumPy is the fundamental package for scientific computing with Python.1.7.0BSD
pandasLlibrary providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language0.13.1BSD
paramikoNative Python SSHv2 protocol library1.12.1GNU
patternPattern is a web mining module for the Python programming language.2.6BSD
pymongoPython distribution containing tools for working with MongoDB2.4.2Apache
pytablesPackage for managing hierarchical datasets and designed to efficiently and easily cope with extremely large amounts of data.2.4.0BSD
reportlabAllows rapid creation of rich PDF documents and vector formats2.7BSD
rpy2Provides a low-level interface to R, a proposed high-level interface, including wrappers to graphical libraries, as well as R-like structures and functions2.3.8Mozilla Public License Version 1.1
scikit-learnMachine Learning in Python0.14.1BSD
scipyPython-based ecosystem of open-source software for mathematics, science, and engineering.0.12.0BSD
SOAPpySOAPpy provides tools for building SOAP clients and servers0.12.5BSD
statsmodelsStatsmodels is a Python module that allows users to explore data, estimate statistical models, and perform statistical tests.0.5.0Modified BSD
svglibAn experimental library for reading and converting SVG.0.6.3LGPL 3
svgwritePython library to create SVG drawings.1.1.5MIT
wxPythonBlending of the wxWidgets C++ class library with the Python programming language.

Other Libraries

NameDescriptionVersionLicense Type
Apache POI
PythonGeneral-purpose interpreted language.2.7.1Python Software Foundation License
RFreely available language and environment for statistical computing2.15.2GNU
TomcatServlet container and Web server
Apache VelocityTemplating engine
ApacheFreely available language and environment for statistical computing. Used in clue web server.2.15.2GNU
nginxNGINX is a high performance, open source web application accelerator. Used in clue web server and reverse-proxy.