跳到内容

$ 运算符是一种语法糖,用于查询和设置顶点序列中顶点的属性。

用法

# S3 method for class 'igraph.vs'
x[[i]] <- value

# S3 method for class 'igraph.vs'
x[i] <- value

# S3 method for class 'igraph.vs'
x$name

# S3 method for class 'igraph.vs'
x$name <- value

V(x) <- value

参数

x

一个顶点序列。对于 V<- 来说,它是一个图。

i

索引。

value

属性的新值,用于顶点序列中的顶点。

name

要查询或设置的顶点属性的名称。

一个向量或列表,包含顶点序列中顶点的属性 name 的值。对于数值、字符或逻辑属性,它是一个适当类型的向量,否则它是一个列表。

详细信息

$ 的查询形式是 vertex_attr() 的快捷方式,例如 V(g)[idx]$attr 等同于 vertex_attr(g, attr, V(g)[idx])

$ 的赋值形式是 set_vertex_attr() 的快捷方式,例如 V(g)[idx]$attr <- value 等同于 g <- set_vertex_attr(g, attr, V(g)[idx], value)

示例

g <- make_(
  ring(10),
  with_vertex_(
    name = LETTERS[1:10],
    color = sample(1:2, 10, replace = TRUE)
  )
)
V(g)$name
#>  [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J"
V(g)$color
#>  [1] 2 1 1 1 1 2 1 1 2 2
V(g)$frame.color <- V(g)$color

# color vertices of the largest component
largest_comp <- function(graph) {
  cl <- components(graph)
  V(graph)[which.max(cl$csize) == cl$membership]
}
g <- sample_(
  gnp(100, 2 / 100),
  with_vertex_(size = 3, label = ""),
  with_graph_(layout = layout_with_fr)
)
giant_v <- largest_comp(g)
V(g)$color <- "blue"
V(g)[giant_v]$color <- "orange"
plot(g)