r - 标准化 igraph 中的边缘权重以进行绘图(边缘权重太厚)
问题描述
如何根据边缘权重对 igraph 中边缘不太厚的加权网络图进行标准化?
解决方案
在中,图形对象在igraph
哪里,您可以通过分配访问边权重并修改边权重:。 g
E(g)$weight
E(g)$weight <- new_values
要在 0-1 之间进行标准化,请尝试:E(g)$weight <- E(g)$weight / max(E(g)$weight)
.
这是一个可复制的示例,您可以复制和粘贴。
library(igraph)
set.seed(1) # reproducibility
# generate random graph
g <- sample_k_regular(10, k = 3, directed = FALSE, multiple = FALSE)
# add edge weights
E(g)$weight <- sample(c(1,10,50), length(E(g)), replace = TRUE)
# view the problem
plot(g, edge.width = E(g)$weight)
# normalize the edge weights between 0-1
E(g)$weight <- E(g)$weight / max(E(g)$weight)
# play with different values of `k` until you get a reasonable looking graph
k = 9
plot(g, edge.width = E(g)$weight * k)
推荐阅读
- python - 如何在带有%的str中包含列表?蟒蛇问题
- gerrit - 在 Gerrit 2.14 中启用头像
- reactjs - 为什么我不能从我的 jsx 中的函数渲染“Hello”?
- youtube-api - YouTube 数据 API - 使用经理帐户将视频上传到 youtube 品牌帐户的频道
- node.js - 在连接池缓存中找不到 poolAlias “default”(将 Express 服务器连接到 Oracle 数据库)
- python - 如何用python建立人口金字塔
- javascript - 谷歌图表不允许我在行创建中使用变量
- java - JPA 不按 LocalDate 和 LocalTime 对记录进行排序
- terraform - 地形。helm_release 资源未显示在“helm ls”输出中
- apache-kafka - Kafka Producer/Consumer 无法连接到服务器上的 localhost kafka 集群