【问题标题】:Hide vertices from plot.igraph conditional on vertex attribute without deleting them根据顶点属性隐藏 plot.igraph 中的顶点而不删除它们
【发布时间】:2022-12-03 18:42:17
【问题描述】:

我有一个 igraph 图,它根据其纬度和经度坐标进行地理布局。我现在想隐藏某个时间段的某些点,同时保留图形的布局。因此,我不想从网络中删除顶点,而只是让它们在这个特定的绘图渲染中不可见,以顶点属性为条件。此外,颜色属性已经设置为捕获另一个变量,所以我不能用它来隐藏点。

我的情节是根据以下代码生成的:

lo <- layout.norm(as.matrix(g[, c("longitude","latitude")]))
plot.igraph(g, layout=lo, vertex.label=NA,rescale=T, vertex.size = 4)

时间属性是存储在V(g)$period中的数值变量

我可以在plot.igraph 函数中放置代码来隐藏V(g)$period == 1 的顶点吗?

【问题讨论】:

    标签: r igraph


    【解决方案1】:

    尝试隐形墨水,例如以背景颜色打印隐藏的对象。 或者试试这个。

    library(igraph)
    ## reproducible example
    g         <- make_graph("Zachary")
    V(g)$name <- V(g)
    set.seed(10)
    lyt       <- layout_with_drl(g)
    plot(g, layout=lyt)
    
    ## delete vertices and preserve layout
    del_vs <- c(9, 19, 24, 33)
    g2 <- g - del_vs
    lyt2 <- matrix(lyt[-del_vs,], ncol=2)
    dev.new(); plot(g2, layout=lyt2)
    

    也可以看看:

    Looking to save coordinates/layout to make temporal networks in Igraph with DRL .

    【讨论】:

      猜你喜欢
      • 2023-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多