我有一个任务,我必须在 R 中生成我自己的随机图函数,并带有 igraph 输出。我发现最简单的方法是简单地生成一个方阵,然后构建一个在矩阵中的节点之间创建边的函数。但是我想做一些特别的事情,其中边缘的概率基于形成更高的女巫网络可能性。看起来像这样:
我的矩阵是这样生成和可视化的:
library(ggraph)
library(igraph)
NCols <- 20
NRows <- 20
myMat <-matrix(runif(NCols*NRows), ncol = NCols)
myMat
randomgraph <- graph_from_adjacency_matrix(myMatG, mode = "undirected", weighted = NULL, diag = TRUE, add.colnames = NULL, add.rownames = NA)
randomgraph %>%
ggraph() +
geom_node_point(colour = "firebrick4", size = 0.5, show.legend = F)
我知道有像 Erdos-Renyi Random-(用于真正的随机图)、Barabási-Albert Scale-Free-和 Watts-Strogatz Small-World 图这样的函数。我正在尝试以独特的方式编写自己的作品。
任何关于如何为随机矩阵编写我自己的优先附件函数的建议或代码片段将不胜感激!谢谢!