R语言igraph中如何根据节点入度调整节点大小?
根据节点入度调整igraph节点大小的解决方案
当然可以实现这个需求,具体步骤很简单:
计算节点入度
在构建好图对象ig后,用igraph内置的degree()函数,指定mode="in"就能获取每个节点的入度数值:# 计算所有节点的入度 in_degree <- degree(ig, mode = "in")用入度控制节点大小
修改你的绘图代码,把固定的vertex.size=7.5替换为基于入度的数值。为了让节点大小的差异更直观,建议给入度值乘以一个可调整的缩放系数(比如3,你可以根据图的实际情况放大或缩小这个系数):plot(ig, frame=T, edge.arrow.size=.5, vertex.label.color="black", vertex.label.dist=1.5, vertex.size = in_degree * 3, # 入度值缩放后作为节点大小 layout = coords)
这样绘图时,入度越高的节点会显示得越大,清晰体现每个节点的入箭头数量差异。如果入度数值本身偏大,就调小系数;如果入度偏小,就调大系数,直到视觉效果符合你的需求。
内容的提问来源于stack exchange,提问作者Desolazione
相关产品推荐
相关产品推荐

