clustergrammer
Version:
This is a clustergram implemented in D3.js. I started from the example http://bost.ocks.org/mike/miserables/ and added the following features
92 lines (91 loc) • 4.05 kB
JSON
[
{
"title": "Introduction",
"text": [
"Clustergrammer is a visualization library built using D3.js that enables intuitive interaction with high-dimensional data. ",
"Clustergrammer was built with biological data in mind and this example shows kinase gene expression levels obtained from the <a href='https://portals.broadinstitute.org/ccle/home'>CCLE</a>.",
"<em class='highlight_word'>Scroll down</em> to take an interactive tour."
],
"run_function": "initialize_view"
},
{
"title": "Zooming and Panning",
"text": [
"Zoom and pan into large datasets by scrolling and dragging."
],
"run_function": "run_zoom_and_pan"
},
{
"title": "Reordering using buttons",
"text": [
"Rows and columns can be reordered using the buttons on the sidebar.",
"Here rows are ordered based on their variance."
],
"run_function": "run_reorder_row_var"
},
{
"title": "More reordering",
"text": [
"You can also reorder the matrix based on the data in a single row/column or category by double-clicking its label.",
"Here columns are ordered based on the data in the EGFR row.",
"Try double-clicking a row/column label or category label to reorder."
],
"run_function": "run_reorder_single_row"
},
{
"title": "Dendrograms",
"text": [
"Row and column dendrogram-groups (grey trapezoids) show clusters at different hierarchical levels. Cluster sizes can be adjusted using the sliders.",
"Clicking on a dendrogram-group exports the row/column names. Pressing Shift while clicking filters the matrix to only show data in this group."
],
"run_function": "dendro_groups"
},
{
"title": "Row Search and Descriptions",
"text": [
"You can search for a row using the search box. This can be useful if you are working with a large matrix.",
"Hovering over a row gene symbol automatically brings up the full gene name and description obtained from the <a href='http://amp.pharm.mssm.edu/Harmonizome/'>Harmonizome</a>"
],
"run_function": "row_search"
},
{
"title": "Filter rows",
"text": [
"Filtering your data to reduce dimensionality can be useful for investegating complex datasets.",
"Clustergrammer allows you to filter your rows based on their sum or variance - here we are filtering for the top 10 rows based on variance."
],
"run_function": "run_filter_var_10"
},
{
"title": "Enrichr Menu",
"text": [
"Users can run enrichment analysis on their genes (where rows are genes) using <a href='http://amp.pharm.mssm.edu/Enrichr/'>Enrichr</a>. ",
"Clicking the Enrichr logo brings up an Enrichr menu with a list of available libraries.",
"Scroll down to run an example enrichment or click a library."
],
"run_function": "open_enrichr_menu"
},
{
"title": "Run Enrichr",
"text": [
"Clicking on the ChEA 2015 library sends your genes (all roows) to Enrichr and resturns the top 10 enriched terms (e.g. transcription factors) as categories.",
"You can select subsets of genes to Enrichr using the dendrogram-group filter (see above)."
],
"run_function": "run_enrichr_cats"
},
{
"title": "Clear Categories",
"text": [
"You can clear your results by opening the Enrichr menu and clicking 'Clear Results'"
],
"run_function": "clear_enrichr_cats"
},
{
"title": "Conclusion",
"text": [
"Clustergrammer enables intuitive exploration of high-dimensional biological data and allows users to gain insights through integration of prior biological knowledge (e.g. enrichment analysis).",
"Clustergrammer is an open source project available on <a href='https://github.com/MaayanLab/clustergrammer'>GitHub</a>. Clustergrammer can be used as a <a href='http://amp.pharm.mssm.edu/clustergrammer/'>web app</a> and as a Jupyter/IPython <a href='https://github.com/MaayanLab/clustergrammer-widget'>widget</a>."
],
"run_function": "run_conclusions"
}
]