R/enrichment_map.R
enrichment_map.Rd
Generates a graph for the enrichment map, combining information from res_enrich
and res_de
. This object can be further plotted, e.g. statically via
igraph::plot.igraph()
, or dynamically via
visNetwork::visIgraph()
enrichment_map(
res_enrich,
res_de,
annotation_obj,
gtl = NULL,
n_gs = 50,
gs_ids = NULL,
overlap_threshold = 0.1,
scale_edges_width = 200,
scale_nodes_size = 5,
color_by = "gs_pvalue"
)
A data.frame
object, storing the result of the functional
enrichment analysis. See more in the main function, GeneTonic()
, to check the
formatting requirements (a minimal set of columns should be present).
A DESeqResults
object.
A data.frame
object with the feature annotation
information, with at least two columns, gene_id
and gene_name
.
A GeneTonic
-list object, containing in its slots the arguments
specified above: dds
, res_de
, res_enrich
, and annotation_obj
- the names
of the list must be specified following the content they are expecting
Integer value, corresponding to the maximal number of gene sets to be displayed
Character vector, containing a subset of gs_id
as they are
available in res_enrich
. Lists the gene sets to be displayed.
Numeric value, between 0 and 1. Defines the threshold to be used for removing edges in the enrichment map - edges below this value will be excluded from the final graph. Defaults to 0.1.
A numeric value, to define the scaling factor for the
edges between nodes. Defaults to 200 (works well chained to visNetwork
functions).
A numeric value, to define the scaling factor for the
node sizes. Defaults to 5 - works well chained to visNetwork
functions.
Character, specifying the column of res_enrich
to be used
for coloring the plotted gene sets. Defaults to gs_pvalue
.
An igraph
object to be further manipulated or processed/plotted
GeneTonic()
embeds an interactive visualization for the enrichment map
library("macrophage")
library("DESeq2")
library("org.Hs.eg.db")
library("AnnotationDbi")
# dds object
data("gse", package = "macrophage")
dds_macrophage <- DESeqDataSet(gse, design = ~ line + condition)
#> using counts and average transcript lengths from tximeta
rownames(dds_macrophage) <- substr(rownames(dds_macrophage), 1, 15)
dds_macrophage <- estimateSizeFactors(dds_macrophage)
#> using 'avgTxLength' from assays(dds), correcting for library size
# annotation object
anno_df <- data.frame(
gene_id = rownames(dds_macrophage),
gene_name = mapIds(org.Hs.eg.db,
keys = rownames(dds_macrophage),
column = "SYMBOL",
keytype = "ENSEMBL"
),
stringsAsFactors = FALSE,
row.names = rownames(dds_macrophage)
)
#> 'select()' returned 1:many mapping between keys and columns
# res object
data(res_de_macrophage, package = "GeneTonic")
res_de <- res_macrophage_IFNg_vs_naive
# res_enrich object
data(res_enrich_macrophage, package = "GeneTonic")
res_enrich <- shake_topGOtableResult(topgoDE_macrophage_IFNg_vs_naive)
#> Found 500 gene sets in `topGOtableResult` object.
#> Converting for usage in GeneTonic...
res_enrich <- get_aggrscores(res_enrich, res_de, anno_df)
em <- enrichment_map(res_enrich,
res_de,
anno_df,
n_gs = 20
)
em
#> IGRAPH 16dcd2b UN-- 20 54 --
#> + attr: name (v/c), size (v/n), original_size (v/n), color.background
#> | (v/c), color.highlight (v/c), color.hover (v/c), color.border (v/c),
#> | width (e/n), color (e/c)
#> + edges from 16dcd2b (vertex names):
#> [1] adaptive immune response--interferon-gamma-mediated signaling pathway
#> [2] adaptive immune response--antigen processing and presentation of endogenous peptide antigen via MHC class I
#> [3] adaptive immune response--positive regulation of T cell mediated cytotoxicity
#> [4] adaptive immune response--antigen processing and presentation via MHC class Ib
#> + ... omitted several edges
# could be viewed interactively with
# library("visNetwork")
# library("magrittr")
# em %>%
# visIgraph() %>%
# visOptions(highlightNearest = list(enabled = TRUE,
# degree = 1,
# hover = TRUE),
# nodesIdSelection = TRUE)