plotExpressionGraph: A function to plot a graph colored by expression data

View source: R/plotExpression.R

plotExpressionGraphR Documentation

A function to plot a graph colored by expression data

Description

Given a graph and expression data for one entity, will plot the graph with the nodes colored according to the expression levels provided.

Usage

plotExpressionGraph(graph, nodeEGmap, exprs, ENTREZIDenvir, mapFun, log = FALSE, nodeAttrs = list(), ...)

Arguments

graph

The graph to plot

nodeEGmap

A list with element names being node names and the elements being EntrezLink IDs corresponding to those node names.

exprs

A vector of expression data, with names being Affymetrix IDs and values being the expression level.

ENTREZIDenvir

An environment mapping Affymetrix IDs to EntrezLink IDs, such as the ones provided in the xxx2ENTREZID environments from the Bioconductor data packages (where xxx) is a data package).

mapFun

A function to map expression levels to colors.

log

Whether or not the expression data.

nodeAttrs

A list of node attributes, as per plot.graph.

...

Any extra arguments to be passed to plot.graph.

Details

This function can be used to plot a graph and have the nodes colored according to expression levels provided by the user. The graph parameter is a graph object from the graph package.

The nodeEGmap parameter is a list that maps the nodes of the graphs to EntrezLink IDs. An example of this is the IMCAEntrezLink object in the integrinMediatedCellAdhesion data set in the graph package.

The exprs argument is a vector mapping expression levels to Affymetrix IDs. One way to generate an appropriate vector is to extract a single column from an ExpressionSet.

The ENTREZIDenvir environment maps Affymetrix IDs to EntrezLink IDs. The simplest way to provide this argument is to load the preferred Bioconductor data package (e.g. hgu95av2.db) and pass in that package's xxx2ENTREZID, where xxx is the name of the package.

The mapFun function defaults to the function defMapFun, which maps nodes to be either blue, green or red depending for expression ranges of 0-100, 101-500, and 501+. In the case where log is TRUE these ranges are modified with log2. Custom versions of this function can be supplied by the user - it must take two parameters, first the expression vector and a boolean value (log) specifying if the data has had a log2 applied to it. The function must return a vector with the same names as the expression vector, but the values of the vector will be color strings.

The nodeAttrs list can be specified if any other node attributes are desired to be set by the user. Please see the plot.graph man page for more information on this. The other attribute list (attrs and edgeAttrs) can be passed in via the ... parameter.

The IMCAEntrezLink data structure was created for the purpose of illustrating this program. On Sept 24 2007, the current version of hgu95av2.db was used to map from the nodes of IMCAGraph (in graph package) to Entrez identifiers.

Author(s)

Jeff Gentry

See Also

plot.graph, integrinMediatedCellAdhesion

Examples

   if (require("Rgraphviz") && require("hgu95av2.db") &&
       require("fibroEset")) {
       data(integrinMediatedCellAdhesion)
	   data(IMCAEntrezLink)
       data(fibroEset)
       attrs <- getDefaultAttrs()
       attrs$graph$rankdir <- "LR"
       plotExpressionGraph(IMCAGraph, IMCAEntrezLink,
                           exprs(fibroEset)[,1],
                           hgu95av2ENTREZID, attrs = attrs)
   }

Bioconductor/geneplotter documentation built on Nov. 2, 2024, 7:25 a.m.