enrichment_map {GeneTonic} | R Documentation

## Creates an enrichment map for the results of functional enrichment

### Description

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()

### Usage

    enrichment_map(
      res_enrich,
      res_de,
      annotation_obj,
      n_gs = 50,
      gs_ids = NULL,
      overlap_threshold = 0.1,
      scale_edges_width = 200,
      scale_nodes_size = 5,
      color_by = "gs_pvalue"
    )

### Arguments

`res_enrich` | 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).
`res_de` | A `DESeqResults` object.
`annotation_obj` | A `data.frame` object with the feature annotation information, with at least two columns, `gene_id` and `gene_name`.
`n_gs` | Integer value, corresponding to the maximal number of gene sets to be displayed
`gs_ids` | Character vector, containing a subset of `gs_id` as they are available in `res_enrich`. Lists the gene sets to be displayed.
`overlap_threshold` | 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.
`scale_edges_width` | A numeric value, to define the scaling factor for the edges between nodes. Defaults to 200 (works well chained to `visNetwork` functions).
`scale_nodes_size` | A numeric value, to define the scaling factor for the node sizes. Defaults to 5 - works well chained to `visNetwork` functions.
`color_by` | Character, specifying the column of `res_enrich` to be used for coloring the plotted gene sets. Defaults to `gs_pvalue`.

### Value

An `igraph` object to be further manipulated or processed/plotted

### See Also

`GeneTonic()` embeds an interactive visualization for the enrichment map

### Examples

    library("macrophage")
    library("DESeq2")
    library("org.Hs.eg.db")
    library("AnnotationDbi")

    # dds object
    data("gse", package = "macrophage")
    dds_macrophage <- DESeqDataSet(gse, design = ~line + condition)
    rownames(dds_macrophage) <- substr(rownames(dds_macrophage), 1, 15)
    dds_macrophage <- estimateSizeFactors(dds_macrophage)

    # 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)
    )

    # 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)
    res_enrich <- get_aggrscores(res_enrich, res_de, anno_df)

    em <- enrichment_map(res_enrich,
                         res_de,
                         anno_df,
                         n_gs = 20
    )

    em

    # could be viewed interactively with
    # library(visNetwork)
    # library(magrittr)
    # em %>%
    #   visIgraph() %>%
    #   visOptions(highlightNearest = list(enabled = TRUE,
    #                                      degree = 1,
    #                                      hover = TRUE),
    #             nodesIdSelection = TRUE)

[Package GeneTonic version 1.0.1 Index]