【问题标题】:Edge-list Network graph R边列表网络图 R
【发布时间】:2020-09-12 15:55:28
【问题描述】:

我一直在 R 上画图。特别是,我想制作一个网络图

但使用另一种颜色的中心节点和其他节点的大小与数据集中的列权重一样大。数据集如下:

structure(list(owner = c("MASTERS", "MASTERS", "MASTERS", "MASTERS", "MASTERS", "MASTERS","MASTERS", "MASTERS"), 
armed_band = c("Biakatu Communal Militia", "FPJC", "FRPI", "LRA", "Mayi Mayi Militia", "Mayi Mayi Militia (Safisha Mabaya)", "Mayi Mayi Militia (Simba)", "RCD"), 
weigth = c(1, 1, 1, 5, 2, 1, 1, 1)), 
row.names = c(NA, -8L), 
class = c("tbl_df", "tbl", "data.frame")) 

我目前使用的代码如下:

aux_samearea_network <- read_excel("file") 
concessions_network = network(aux_samearea_network, 
                     matrix.type = "edgelist", 
                     ignore.eval = FALSE,
                     names.eval = "weights" ) 

concessions_network %v% "Concession" = ifelse(
aux_samearea_network$armed_band %in% c("LRA",
"Mayi Mayi Militia", 
"Biakatu Communal Militia",
"FPJC",
"FRPI",
"Mayi Mayi Militia (Safisha Mabaya)",
"Mayi Mayi Militia (Simba)",
"RCD"), "Armed Band", "Concession")

ggnet2(concessions_network, 
   node.size = "weights", 
   node.color = "lightblue", 
   edge.size = 1, 
   edge.color = "grey",
   main = "Network concession MASTERS",
   edge.label = "weights",
   label = TRUE,)

谁能帮我解决这个问题?我将不胜感激。

【问题讨论】:

    标签: r networking graph edge-list


    【解决方案1】:

    我想你可以试试igraph,如下所示

    library(igraph)
    g <- graph_from_data_frame(aux_samearea_network)
    V(g)$color <- factor(V(g)$name %in% aux_samearea_network$owner)
    plot(g,
      edge.width = aux_samearea_network$weigth,
      edge.label = aux_samearea_network$weigth
    )
    

    我们会得到

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-04
      • 1970-01-01
      • 2021-04-15
      • 1970-01-01
      • 2021-01-20
      • 1970-01-01
      • 2014-11-25
      • 1970-01-01
      相关资源
      最近更新 更多