| DiffGraph {rags2ridges} | R Documentation |
Visualize the differential graph
Description
Function visualizing the differential graph, i.e., the network of edges that are unique for 2 class-specific graphs over the same vertices
Usage
DiffGraph(
P1,
P2,
lay = "layout_with_fr",
coords = NULL,
Vsize = 15,
Vcex = 1,
Vcolor = "orangered",
VBcolor = "darkred",
VLcolor = "black",
P1color = "red",
P2color = "green",
main = ""
)
Arguments
P1 |
Sparsified precision |
P2 |
Sparsified precision |
lay |
A |
coords |
A |
Vsize |
A |
Vcex |
A |
Vcolor |
A |
VBcolor |
A |
VLcolor |
A |
P1color |
A |
P2color |
A |
main |
A |
Details
Say you have 2 class-specific precision matrices that are estimated over the
same variables/features. This function visualizes in a single graph the
edges that are unique to the respective classes. Hence, it gives the
differential graph. Edges unique to P1 are colored according to
P1color. Edges unique to P2 are colored according to
P2color. Dashed lines indicate negative precision elements while
solid lines indicate positive precision elements.
The default layout is according to the Fruchterman-Reingold algorithm
(1991). Most layout functions supported by igraph are
supported (the function is partly a wrapper around certain
igraph functions). The igraph layouts can be invoked by a
character that mimicks a call to a igraph layout
functions in the lay argument. When using lay = NULL one can
specify the placement of vertices with the coords argument. The row
dimension of this matrix should equal the number of vertices. The column
dimension then should equal 2 (for 2D layouts) or 3 (for 3D layouts). The
coords argument can also be viewed as a convenience argument as it
enables one, e.g., to layout a graph according to the coordinates of a
previous call to Ugraph. If both the the lay and the coords arguments
are not NULL, the lay argument takes precedence.
Value
The function returns a graph.
Author(s)
Carel F.W. Peeters <carel.peeters@wur.nl>
References
Csardi, G. and Nepusz, T. (2006). The igraph software package for complex network research. InterJournal, Complex Systems 1695. http://igraph.sf.net
Fruchterman, T.M.J., and Reingold, E.M. (1991). Graph Drawing by Force-Directed Placement. Software: Practice & Experience, 21: 1129-1164.
See Also
Examples
## Obtain some (high-dimensional) data, class 1
p = 25
n = 10
set.seed(333)
X = matrix(rnorm(n*p), nrow = n, ncol = p)
colnames(X)[1:25] = letters[1:25]
## Obtain some (high-dimensional) data, class 2
set.seed(123456)
X2 = matrix(rnorm(n*p), nrow = n, ncol = p)
colnames(X2)[1:25] = letters[1:25]
## Obtain regularized precision under optimal penalty, classes 1 and 2
OPT <- optPenalty.LOOCV(X, lambdaMin = .5, lambdaMax = 30, step = 100)
OPT2 <- optPenalty.LOOCV(X2, lambdaMin = .5, lambdaMax = 30, step = 100)
## Determine support regularized standardized precision under optimal penalty
PC0 <- sparsify(symm(OPT$optPrec), threshold = "localFDR")$sparseParCor
PC02 <- sparsify(symm(OPT2$optPrec), threshold = "localFDR")$sparseParCor
## Visualize differential graph
DiffGraph(PC0, PC02)