当邻接矩阵值超出特定阈值时,如何使边出现在图中?

数据挖掘 r 图表
2022-03-09 08:15:55

我已经使用 igraph 包从邻接矩阵创建了一个图形,但我希望仅当邻接矩阵中的值超出特定阈值时边缘才会出现在图形中。使用本方法,我得到所有权重非零的边。

set.seed(42)
iris_matrix <- as.matrix(iris[,1:4])
image(iris_matrix)
g<-cor(iris_matrix)
library(igraph)
R<-graph.adjacency(g, mode=c("undirected"), weighted=TRUE, diag=FALSE, add.colnames=NULL, add.rownames=NULL)
plot(R)
1个回答

第 7 行是您需要的:

set.seed(42)
iris_matrix <- as.matrix(iris[,1:4])
image(iris_matrix)
g<-cor(iris_matrix)
library(igraph)
R<-graph.adjacency(g, mode=c("undirected"), weighted=TRUE, diag=FALSE, add.colnames=NULL, add.rownames=NULL)
R[R > thresh] <- 0 
plot(R)