gpt4 book ai didi

r - 在 R 中使用 igraph 在网络图上仅显示特定标签

转载 作者:行者123 更新时间:2023-12-04 14:42:53 24 4
gpt4 key购买 nike

我正在尝试绘制一个仅显示某些顶点标签的图。在这种情况下,我只想显示具有一定数量边的顶点的标签。

我正在将顶点和边读入图形对象,如下所示:

nodes <- read.csv("path_to_file.csv")
edges <- read.csv("path_to_file.csv")
g <- graph_from_data_frame(edges,directed=TRUE,vertices=nodes)

我使用以下命令绘制图形并根据连接数改变边的宽度($rels 属性是两个顶点之间的连接数):
plot.igraph(g,vertex.size=3,vertex.label.cex=0.5,layout=layout.fruchterman.reingold(g,niter=10000),edge.arrow.size=0.15,edge.width=E(g)$rels/100)

例如,有没有办法说只有边数大于 100 的顶点才应该显示它们的标签?如果我尝试在我的 csv 文件中保留顶点标签,igraph 会认为它们是重复的顶点。

数据示例
nodes.csv
name | org_id
U.S. Department of Energy | 70063
Environmental Protection Agency | 100000

edges.csv
from | to | rels
U.S. Department of Energy | Hanford SSAB | 477
Natural Resources Defense Council | Environmental Protection Agency | 322

最佳答案

尝试

library(igraph)
set.seed(1)
g <- sample_pa(20)
V(g)$label <- letters[1:20]
plot(g, vertex.label = ifelse(degree(g) > 2, V(g)$label, NA))

仅显示度数大于 2 的顶点的标签:

enter image description here

关于r - 在 R 中使用 igraph 在网络图上仅显示特定标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32262906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com