6 Network layout
Load R Package
Example data
# Access built-in example datasets in ggNetView
# Relative abundance table of rarefied ASVs or OTUs
data("otu_rare_relative")
dim(otu_rare_relative)## [1] 2859 18
otu_rare_relative[1:5, 1:5]## KO1 KO2 KO3 KO4 KO5
## ASV_1 0.03306667 0.05453333 0.02013333 0.03613333 0.02686667
## ASV_2 0.05750000 0.03393333 0.06046667 0.05810000 0.07320000
## ASV_3 0.01733333 0.01296667 0.02290000 0.02336667 0.03106667
## ASV_4 0.04266667 0.01093333 0.01416667 0.01933333 0.03346667
## ASV_6 0.02646667 0.01856667 0.02110000 0.02353333 0.03806667
## [1] 2859 8
tax_tab[1:5, 1:5]## # A tibble: 5 × 5
## OTUID Kingdom Phylum Class Order
## <chr> <chr> <chr> <chr> <chr>
## 1 ASV_2 Archaea Thaumarchaeota Unassigned Nitrososphaerales
## 2 ASV_3 Bacteria Verrucomicrobia Spartobacteria Unassigned
## 3 ASV_31 Bacteria Actinobacteria Actinobacteria Actinomycetales
## 4 ASV_27 Archaea Thaumarchaeota Unassigned Nitrososphaerales
## 5 ASV_9 Bacteria Unassigned Unassigned Unassigned
Build graph object
graph_obj <- build_graph_from_mat(
mat = otu_rare_relative,
transfrom.method = "none", # based your input data
r.threshold = 0.7,
p.threshold = 0.05,
method = "WGCNA",
cor.method = "pearson",
proc = "BH",
module.method = "Fast_greedy",
node_annotation = tax_tab,
top_modules = 15,
seed = 1115
)
graph_obj## # A tbl_graph: 2049 nodes and 9602 edges
## #
## # An undirected simple graph with 100 components
## #
## # Node Data: 2,049 × 14 (active)
## name modularity modularity2 modularity3 Modularity Degree Strength Kingdom
## <chr> <fct> <ord> <chr> <ord> <dbl> <dbl> <chr>
## 1 ASV_916 1 1 1 1 58 50.5 Bacter…
## 2 ASV_777 1 1 1 1 58 48.7 Bacter…
## 3 ASV_606 1 1 1 1 55 45.8 Bacter…
## 4 ASV_740 1 1 1 1 54 47.2 Bacter…
## 5 ASV_14… 1 1 1 1 54 44.5 Bacter…
## 6 ASV_23… 1 1 1 1 54 47.4 Bacter…
## 7 ASV_15… 1 1 1 1 52 45.3 Bacter…
## 8 ASV_24… 1 1 1 1 52 43.0 Bacter…
## 9 ASV_19… 1 1 1 1 52 43.0 Bacter…
## 10 ASV_568 1 1 1 1 51 45.1 Bacter…
## # ℹ 2,039 more rows
## # ℹ 6 more variables: Phylum <chr>, Class <chr>, Order <chr>, Family <chr>,
## # Genus <chr>, Species <chr>
## #
## # Edge Data: 9,602 × 5
## from to weight correlation corr_direction
## <int> <int> <dbl> <dbl> <chr>
## 1 1771 1825 0.793 0.793 Positive
## 2 594 597 0.895 0.895 Positive
## 3 588 597 0.864 0.864 Positive
## # ℹ 9,599 more rows
6.1 Gephi layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "gephi",
center = F,
shrink = 0.8,
layout.module = "random",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.2 Fruchterman–Reingold force-directed layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "fr2",
center = F,
shrink = 0.8,
layout.module = "random",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.3 Diamond layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "diamond",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.4 Kk layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "kk",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.5 Nicley layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "nicely",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 12; retrying with k_nn = 32.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 32; retrying with k_nn = 52.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 52; retrying with k_nn = 72.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 72; retrying with k_nn = 92.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 92; retrying with k_nn = 115.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 115; retrying with k_nn = 144.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 144; retrying with k_nn = 180.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 180; retrying with k_nn = 225.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 225; retrying with k_nn = 282.
## Warning in ggNetView(graph_obj = graph_obj, layout = "nicely", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 282; retrying with k_nn = 353.
p
6.6 Petal layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "petal",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.8 Petal layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "circle",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.9 Diamond outline layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "diamond_outline",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.10 Grid layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "grid",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.11 Heart_centered layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "heart_centered",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.12 Lgl layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "lgl",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)## Warning in alg_fun(graph): LGL layout does not support disconnected graphs yet.
## Source: layout/large_graph.c:179
## Warning in ggNetView(graph_obj = graph_obj, layout = "lgl", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 12; retrying with k_nn = 32.
p
6.13 Randomly layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "randomly",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.14 Rectangle layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "rectangle",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.15 Square layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "square",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.16 Star layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "star",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.17 Star_concentric layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "star_concentric",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)
p
6.18 Stress layout
p <- ggNetView(
graph_obj = graph_obj,
layout = "stress",
center = F,
shrink = 0.8,
layout.module = "adjacent",
group.by = "Modularity",
fill.by = "Modularity"
)## Warning in ggNetView(graph_obj = graph_obj, layout = "stress", center = F, :
## `layout.module = 'adjacent'` failed at k_nn = 12; retrying with k_nn = 32.
p