r - R中有向网络中的颜色节点
问题描述
我有一个只有两种类型的节点 A 和 B 的有向网络。方向总是从任何给定的 A到任何给定的 B。没有其他方向是可能的。
边缘列表如下所示:
edges <- read.table(text = "
from to weight
1 6 1.2
3 7 1.4
4 6 1.2
1 7 1.2
2 8 1.2
1 9 1.2
5 10 1.2 ", header=T )
节点列表如下所示:
nodes
id
1 1
2 1
3 3
4 4
5 5
6 6
7 7
8 B
9 9
10 10
该图是使用 igraph 包创建的。
g <- graph_from_data_frame(d = edges, vertices=nodes, directed = TRUE)
是否可以根据边缘列表中的节点来自或到节点为节点着色,而不向节点列表添加其他变量/标签?
(我尝试像这样为节点着色,但意识到这没有多大意义)
plot(g, vertex.color=V(g$edges=='from'))
解决方案
我不是 100% 确定,但我认为你正在寻找的东西并不存在。vertex.color
需要一个颜色向量,每个顶点一种颜色。
同时,作为一种解决方法,您可以使用 degree 的输出来选择入(或出)度为 0 或更高的顶点:
plot(g,
vertex.color=ifelse(degree(g, mode = "out")>0, "red", "black"),
size=15)
推荐阅读
- powershell - Powershell 脱机文件空间 (Win32_OfflineFilesDiskSpaceLimit)
- python - “ImportError:找不到合适的图像”使用 BeautifulSoup 和 Python3.8
- nestjs - Nest.js:为所有路由添加护照策略
- python - 不要不明白为什么我的文件看起来不可读
- acumatica - 如何从请求页面调用“取消请求”操作?
- javascript - 如何在 VSCode 的终端中运行 JavaScript 代码?
- excel - 如何运行 VBA 循环来格式化每个工作表并创建摘要选项卡
- python - 在python中读取时区字符串
- image - 如何在 VS Code 容器定义 JSON 中指定用于图像的标签?
- react-native - 异步后端调用上的 useEffect 和 setState 不重新渲染组件