plot_igraph {TraRe}R Documentation

Plotting functions for Gene Regulatory Network.

Description

Collection of functions for generating graphs layouts to plot GRN obtained from NET_run() method. return_layout() generates a layout from the graph object returned by NET_run() and return_layout_phenotype() plots targets according to the t-statistic from the differential expression analysis of the desired phenotype. plot_igraph() takes in the igraph object and generated layout and generates plot.

Usage

plot_igraph(mygraph = NULL, mytitle = "", titlecol = "black", mylayout = NULL)

return_layout(regs = NULL, targets = NULL, namehash = NULL)

return_layout_phenotype(
  regs = NULL,
  targets = NULL,
  varfile = NULL,
  namehash = NULL
)

orderGraphWeights(graph, edgelist)

Arguments

mygraph

igraph object returned from NET_run().

mytitle

Desired tittle.

titlecol

Color for the tittle.

mylayout

desired layout.

regs

regulators name list

targets

targets name list

namehash

list containing the drivers genes as names and transcripts as values. If only genes are required, leave it empty.

varfile

two column file containing, gene names as rows, t-statistic from the differential expression analysis of the desired phenotype column and a boolean variable for regulator (1) - no regulator (0) column.

graph

igraph object

edgelist

list containing the edges of the igraph object.

Value

plot of the desired single GRN using a specific layout.

Examples


   ## Assume we have run the rewiring method and the `NET_run()` method to generate the
   ## igraph object. We are going to generate and plot both layouts for the example.
   ## We are going to generate all the files we need except for the igraph object, which
   ## is included as an example file in this package.

   ## We load the igraph object that we generated from the `NET_run()` example.
   ## Note: the igraph object is inside the list `NET_run()` generates.

   graph <- readRDS(paste0(system.file('extdata',package='TraRe'),
                    '/graph_netrun_example.rds'))$graphs$VBSR

   ## We first generate the normal layout for the plot.
   ## We need the drivers and target names.

   drivers <- readRDS(paste0(system.file('extdata',package='TraRe'),'/tfs_linker_example.rds'))
   drivers_n <- rownames(drivers)

   targets <- readRDS(paste0(system.file('extdata',package='TraRe'),'/targets_linker_example.rds'))
   targets_n <- rownames(targets)

   ## As for this example we are working at gene level (we dont have transcripts inside genes),
   ## we will generate a dictionary with genes as keys and values (see param `namehash`)

   normal_layout <- return_layout(drivers_n,targets_n)

   ## We now generate the phenotype layout and the `varfile` we ned for this layout.
   ## (I leave here a way to generate) We need to separate our expression matrix by
   ## a binary phenotype, for this case, i will consider the first 40 samples are
   ## responding to a treatment (R) and the rest not (NR).

   gnames <- c(drivers_n,targets_n)
   expmat <-rbind(drivers,targets)

   phenotype <- utils::read.delim(paste0(system.file('extdata',package='TraRe'),
                                  '/phenotype_rewiring_example.txt'))

   expmat_R <- expmat[,phenotype$Class=='R']
   expmat_NR <- expmat[,phenotype$Class=='NR']


   varfile <- t(as.matrix(sapply(gnames,
              function(x) c(stats::t.test(expmat_R[x,],expmat_NR[x,])$statistic,
              if(x%in%drivers_n) 1 else 0))))

   colnames(varfile)<-c('t-stat','is-regulator')

   phenotype_layout <- return_layout_phenotype(drivers_n,targets_n,varfile)

   plot_igraph(graph,mytitle='Normal Layout',titlecol='black',mylayout=normal_layout)
   plot_igraph(graph,mytitle='Phenotype Layout',titlecol='black',mylayout=phenotype_layout)


[Package TraRe version 1.2.0 Index]