跳到内容

subgraph() 创建一个图的子图,仅包含指定的顶点以及它们之间的所有边。

用法

subgraph(graph, vids)

induced_subgraph(
  graph,
  vids,
  impl = c("auto", "copy_and_delete", "create_from_scratch")
)

subgraph_from_edges(graph, eids, delete.vertices = TRUE)

参数

graph

原始图。

vids

数值向量,原始图的顶点,这些顶点将构成子图。

impl

字符标量,用于选择子图计算的两种实现方式。“copy_and_delete”首先复制图,然后删除未包含在结果图中的顶点和边。“create_from_scratch”搜索必须保留的所有顶点和边,然后使用它们从头开始创建图。“auto”自动选择两种实现方式,使用基于原始图和结果图大小的启发式方法。

eids

将在结果图中保留的边的边ID。

delete.vertices

逻辑标量,是否删除在eids中没有任何相邻边的顶点。

一个新的图对象。

详细信息

induced_subgraph() 计算图中一组顶点的导出子图。这意味着恰好指定的顶点以及它们之间的所有边都将保留在结果图中。

subgraph_from_edges() 计算图的子图。对于此函数,可以指定要保留的顶点和边。此函数将在 igraph 的下一个主要版本中重命名为 subgraph()

目前,subgraph() 函数与 induced_subgraph() 的功能相同(假设 ‘auto’ 作为 impl 参数),但此行为已被弃用。在下一个主要版本中,subgraph() 将取代 subgraph_from_edges() 的功能。

作者

Gabor Csardi csardi.gabor@gmail.com

示例


g <- make_ring(10)
g2 <- induced_subgraph(g, 1:7)
g3 <- subgraph_from_edges(g, 1:5)