Learn R Programming

cograph (version 2.7.2)

plot.cograph_motifs: Plot Network Motifs

Description

Visualize motif frequencies and their statistical significance.

Usage

# S3 method for cograph_motifs
plot(
  x,
  type = c("bar", "heatmap", "network"),
  show_nonsig = FALSE,
  top_n = NULL,
  colors = c("#2166AC", "#F7F7F7", "#B2182B"),
  combined = TRUE,
  ...
)

Value

For type = "bar" and type = "heatmap", a ggplot2 object. For type = "network", NULL (the panels are drawn with base graphics for their side effect). invisible(NULL) with a message when no motif survives the show_nonsig / top_n

filters.

Arguments

x

A cograph_motifs object from motif_census()

type

Plot type:

"bar"

(default) Bar chart of motif frequencies, colored by significance direction (over/under-represented).

"heatmap"

Heatmap of z-scores across motif types.

"network"

Network diagrams of the top motifs by |z-score|.

show_nonsig

Show non-significant motifs? Default FALSE.

top_n

Show only top N motifs by |z-score|. Default NULL (all).

colors

Three-element color vector for under-represented, neutral, and over-represented motifs. Default c("#2166AC", "#F7F7F7", "#B2182B") (blue/near-white/red).

combined

Logical: when TRUE (default) and type = "network", arrange the per-motif panels in an internal grid via graphics::par(mfrow=...). Set to FALSE to draw into a layout the caller has already configured (e.g. via panel_layout()). Has no effect for type = "bar" or type = "heatmap".

...

For type = "network", additional arguments passed to the per-motif igraph plot calls. The ggplot-based types ("bar", "heatmap") do not consume them.

See Also

motif_census() for the analysis that produces this object

Other motifs: extract_motifs(), extract_triads(), get_edge_list(), motif_census(), motifs(), plot.cograph_motif_analysis(), subgraphs(), triad_census()

Examples

Run this code
mat <- matrix(sample(0:1, 100, replace = TRUE, prob = c(0.7, 0.3)), 10, 10)
diag(mat) <- 0
m <- motif_census(mat, directed = TRUE, n_random = 50)
plot(m)
plot(m, type = "network")

Run the code above in your browser using DataLab