python-igraph API 参考

python-igraph 中所有类、函数和方法的列表

类文档

class VertexClustering(Clustering)

已知子类: igraph.cut.Cut

在层级结构中查看

图的顶点集的聚类。

此类通过将其链接到特定的 Graph 对象并可选择存储聚类的模块化得分来扩展 Clustering。它还提供了一些方便的方法,例如获取对应于聚类的子图等。

注意
由于此类链接到 Graph,因此通过以下方式销毁图形del如果存在引用 GraphVertexClustering,则运算符不释放图占用的内存。
类方法 FromAttribute 创建一个基于顶点属性值的顶点聚类。
方法 __init__ 为给定的图创建一个聚类对象。
方法 __plot__ 在给定的边界框中将聚类绘制到给定的 Cairo 上下文中。
方法 as_cover 返回一个VertexCover,其中包含与此聚类相同的聚类。
方法 cluster_graph 返回一个图,其中每个聚类都被收缩成一个顶点。
方法 crossing 返回一个布尔向量,其中元素iTrue当且仅当边i位于聚类之间时,False否则。
方法 giant 返回聚类图中最大的聚类。
方法 recalculate_modularity 重新计算存储的模块化值。
方法 subgraph 获取属于给定聚类的子图。
方法 subgraphs 获取属于每个聚类的所有子图。
属性 返回属于此对象的图
属性 modularity 返回模块化分数
方法 _formatted_cluster_iterator 迭代聚类并将它们格式化为字符串,以便在摘要中显示。
方法 _recalculate_modularity_safe 重新计算存储的模块化值并吞下模块化函数引发的所有异常(如果有)。
类变量 _default_palette 未归档
实例变量 _graph 未归档
实例变量 _modularity 未归档
实例变量 _modularity_dirty 未归档
实例变量 _modularity_params 未归档

继承自 Clustering

方法 __getitem__ 返回指定聚类的成员。
方法 __iter__ 迭代此聚类中的聚类。
方法 __len__ 返回聚类的数量。
方法 __str__ 未归档
方法 compare_to 使用一些相似性或距离度量将此聚类与另一个聚类进行比较。
方法 size 返回给定聚类的大小。
方法 size_histogram 返回聚类大小的直方图。
方法 sizes 返回给定聚类的大小。
方法 summary 返回聚类的摘要。
属性 membership 返回成员向量。
属性 n 返回此聚类覆盖的元素数量。
实例变量 _len 未归档
实例变量 _membership 未归档
@classmethod
def FromAttribute(cls, graph, attribute, intervals=None, params=None):

创建一个基于顶点属性值的顶点聚类。

具有相同属性的顶点将对应于相同的聚类。

参数
我们正在处理的图
attribute聚类所基于的属性的名称。
intervals对于数值属性,您可以在此处传递单个数字或数字列表。单个数字意味着顶点将被放入该宽度的 bin 中,并且最终位于同一 bin 中的顶点将位于同一聚类中。数字列表显式指定 bin 位置;例如,[10, 20, 30]意味着将有四个类别:属性值小于 10、介于 10 和 20 之间、介于 20 和 30 之间以及大于 30 的顶点。间隔从左侧闭合,从右侧打开。
params要存储在此对象中的其他参数。
返回值
一个新的 VertexClustering 对象
def __init__(self, graph, membership=None, modularity=None, params=None, modularity_params=None):
igraph.cut.Cut 中被覆盖

为给定的图创建一个聚类对象。

参数
将与聚类关联的图
membership成员列表。列表的长度必须等于图中的顶点数。如果None,则假定每个顶点都属于同一聚类。
modularity聚类的模块化得分。如果None,它将在需要时计算。
params要存储在此对象中的其他参数。
modularity_params应传递给 Graph.modularity 的参数,以便在(重新)计算模块化时使用。如果原始图是加权图,则应传递包含一个weight键和此处相应值的字典。
def __plot__(self, context, bbox, palette, *args, **kwds):

在给定的边界框中将聚类绘制到给定的 Cairo 上下文中。

这是通过使用相同的参数调用 Graph.__plot__() 来完成的,但根据当前聚类对图顶点进行着色(除非被vertex_color参数显式覆盖)。

此方法理解 Graph.__plot__() 理解的所有位置参数和关键字参数,此处仅突出显示差异

  • mark_groups:是否通过彩色多边形突出显示某些顶点组。除了 Graph.__plot__ 接受的值(即,将颜色映射到顶点索引的 dict,包含顶点索引列表的列表,或False),还接受以下值

    • True:所有组都将被突出显示,颜色与当前调色板中的相应颜色索引匹配(请参阅paletteGraph.__plot__() 的关键字参数。
    • 将聚类索引或顶点索引元组映射到颜色名称的字典。给定的聚类或顶点组将以给定的颜色突出显示。
    • 群集索引列表。这等效于传递一个将来自当前调色板的数值颜色索引映射到群集索引的 dict;因此,列表的元素 i 引用的群集将通过调色板中的颜色 i 突出显示。

    plotting.mark_groups配置键的值也在此处考虑;如果该配置键是Truemark_groups未明确给出,则会自动设置为True.

    您还可以使用 VertexSeq 实例代替顶点索引列表。

    您还可以使用当前调色板中的颜色索引代替颜色名称。None作为颜色名称将意味着相应的组将被忽略。

  • palette:用于将数值颜色索引解析为 RGBA 值的调色板。默认情况下,这是一个 ClusterColoringPalette 的实例。

参见
有关更多受支持的关键字参数,请参阅 Graph.__plot__()
def as_cover(self):

返回一个VertexCover,其中包含与此聚类相同的聚类。

def cluster_graph(self, combine_vertices=None, combine_edges=None):

返回一个图,其中每个聚类都被收缩成一个顶点。

在结果图中,顶点 i 表示此聚类中的群集 i。如果原始图中至少存在一个连接的顶点对 (a, b),使得顶点 a 位于群集 i 中,并且顶点 b 位于群集 j 中,则顶点 ij 将连接。

参数
combine_vertices指定如何从旧顶点的属性派生新图中顶点的属性。有关更多详细信息,请参见 Graph.contract_vertices()
combine_edges指定如何从旧边的属性派生新图中边的属性。有关更多详细信息,请参见 Graph.simplify()。如果指定False此处,边将不会被合并,并且表示原始群集的顶点之间的边数将等于原始图中这些群集的成员之间的边数。
返回值
新图。
def crossing(self):

返回一个布尔向量,其中元素iTrue当且仅当边i位于聚类之间时,False否则。

def giant(self):

返回聚类图中最大的聚类。

最大的群集是一个群集中不存在更大群集的群集。如果聚类表示社区检测功能的结果,则它也可能被称为巨型社区

前提条件:自构造覆盖以来,图形的顶点集未被修改。

返回值
最大群集的副本。
注意
可能存在多个最大的群集,如果存在多个最大的群集,此方法将返回任意一个的副本。
def recalculate_modularity(self):

重新计算存储的模块化值。

如果自创建 VertexClustering 对象以来图已被修改(已添加或删除边),则必须先调用此方法,然后才能通过类成员modularity之一或q查询聚类的模块化得分。

返回值
新的模块化得分
def subgraph(self, idx):

获取属于给定聚类的子图。

前提条件:自构造覆盖以来,图形的顶点集未被修改。

参数
idx聚类索引
返回值
子图的副本
def subgraphs(self):

获取属于每个聚类的所有子图。

前提条件:自构造覆盖以来,图形的顶点集未被修改。

返回值
一个包含子图副本的列表
@property
graph =

返回属于此对象的图

@property
modularity =

返回模块化分数

def _formatted_cluster_iterator(self):

迭代聚类并将它们格式化为字符串,以便在摘要中显示。

def _recalculate_modularity_safe(self):

重新计算存储的模块化值并吞下模块化函数引发的所有异常(如果有)。

返回值
新的模块化得分或None如果无法计算模块化函数。
_default_palette =

未归档

_graph =

未归档

_modularity =

未归档

_modularity_dirty: bool =

未归档

_modularity_params: dict =

未归档