Description Usage Arguments Details Value Author(s) See Also Examples
These functions display a matrix as an annular heatmap reflecting the periodicity of the row ordering
1 2 3 4 5 6 7 8 | circularmap(pos, profiles, column.order=NULL, cluster.result = NULL,
cluster.heights = NULL, Rin = 10, Rout = 30, thickness = 3, label.names = NULL,
Rlabel = 32, label.size = 1.5, normalize.profiles = T)
make.circularmap(profiles, method = "nMDS", column.method="none",
cluster.method = "average.linkage", metric = "pearson", column.metric="pearson",
Rin = 10, Rout = 30, thickness = 3, label.names = NULL, Rlabel = 32,
label.size = 1.5, normalize.profiles = T, row.random.seed=NULL,column.random.seed=NULL)
|
pos |
The positions for the rows as produced by some dimensional reduction technique. Can either be list of angles, or of 2d positions. |
profiles |
A matrix containing the values to be displayed as a heatmap. |
column.order |
A vector containing the order in which columns should be shown |
cluster.result |
The hierarchical clustering result of type |
cluster.heights |
An optional vector of heights to over-ride the heights specified in |
Rin |
Inner radius of annulus. |
Rout |
Outer radius of annulus. |
thickness |
Thickness of the individual row expression level bands. |
label.names |
list of row labels. |
Rlabel |
Radius at which row labels are placed. |
label.size |
Font size for labels. |
normalize.profiles |
logical: if true the profiles are normalized (mean zero, unit variance) before display. |
method |
The dimensional reduction method used by |
column.method |
The dimensional reduction method used by |
cluster.method |
clustering method used for superposed row cluster. Either "complete.linkage" or "average.linkage". |
metric |
the distance function used for row embedding. Can be either "pearson" or "euclidean". |
column.metric |
the distance function used for column embedding. Can be either "pearson" or "euclidean". |
row.random.seed |
Random seed to be used if nMDS is used to construct row embedding |
column.random.seed |
Random seed to be used in nMDS is used to generate column ordering |
These are function used to construct heatmap like plots arranged in an annular ring. The assumption is that the 2d embedding result for the rows of the given matrix is circular in shape (the user should confirm this is indeed the case). The angular positions of each point (i.e., row) in this embedding is the angular position of its profile in the circular map. circularmap
is the base function that takes the expression matrix and the result of dimensional reduction (expressed as a 2d positions or a list of angles) and produces the annular heatmap. make.circularmap
is a convenience wrapper function that takes the given matrix, performs dimensional reduction using either "nMDS" or "PCA", produces cluster analysis on the row, and passes these results to circularmap
for plotting.
Apart from the circular (vs linear) ordering, this function differs from heatmap1
in that the profiles are no longer equally spaced, and may reflect the non-uniformity of the angular positions. On the other hand, heatmap1
treats rows and columns on an equal footing while these functions focus primarily on the relations between rows.
The cluster analysis makes use of the same distance measure (specified by metric
) as the dimensional reduction method.
A ggplot2 plot of class ggplot
.
Satwik Rajaram and Yoshi Oono
1 2 3 4 5 6 7 8 9 10 11 12 13 | make.circularmap(as.matrix(mtcars),metric="euclidean",cluster.method="complete.linkage",
normalize.profiles=FALSE)
#is equivalent to
mtcars.nMDS<-nMDS(as.matrix(mtcars),metric="euclidean")
mtcars.cluster<-hclust(dist(mtcars),method="complete")
circularmap(mtcars.nMDS$x,as.matrix(mtcars),normalize.profiles=FALSE,
cluster.result=mtcars.cluster)
#To change coloring scheme etc
make.circularmap(as.matrix(mtcars),metric="euclidean",cluster.method="complete.linkage",
normalize.profiles=FALSE)+scale_colour_gradient2(low="yellow",high="blue",
mid="black",midpoint=200);
|
Loading required package: ggplot2
Loading required package: rgl
Warning messages:
1: In rgl.init(initValue, onlyNULL) : RGL: unable to open X11 display
2: 'rgl_init' failed, running with rgl.useNULL = TRUE
3: .onUnload failed in unloadNamespace() for 'rgl', details:
call: fun(...)
error: object 'rgl_quit' not found
Scale for 'colour' is already present. Adding another scale for 'colour',
which will replace the existing scale.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.