geographical_threshold_graph#
- geographical_threshold_graph(n, theta, dim=2, pos=None, weight=None, metric=None, p_dist=None, seed=None)[源代码]#
返回地理阈值图。
地理门槛图模型的位置 \(n\) 节点在矩形域中均匀随机分布。每个节点 \(u\) 被分配一个权重 \(w_u\) 。两个节点 \(u\) 和 \(v\) 在以下情况下由一条边连接
\[(w_u+w_v)p_{dist}(R)\ge\theta\]哪里
r
是两个人之间的距离u
和v
,p_dist
是的任何函数r
,以及 \(\theta\) 作为阈值参数。p_dist
用于在决定是否应该连接节点时对节点之间的距离赋予权重。越大p_dist
是,越容易出现的节点被隔开r
是相互联系的,反之亦然。- 参数
- n整型或可迭代
节点数或可迭代节点数
- theta: float
阈值
- dim整型,可选
图的维度
- posDICT
节点位置为按节点为关键字的元组字典。
- weightDICT
以节点为关键字的数字字典形式的节点权重。
- metric功能
关于数字向量(表示为列表或元组)的度量。这必须是一个接受两个列表(或元组)作为输入并产生一个数字作为输出的函数。该函数还必须满足 metric 。具体地说,如果 \(d\) 是函数和 \(x\) , \(y\) ,以及 \(z\) 是图中的矢量,那么 \(d\) 必须满足
\(d(x, y) \ge 0\),
\(d(x, y) = 0\) if and only if \(x = y\),
\(d(x, y) = d(y, x)\),
\(d(x, z) \le d(x, y) + d(y, z)\).
如果未指定此参数,则使用欧几里得距离度量。
- p_dist函数,可选
在决定是否应该连接节点时,用于对节点之间的距离赋予权重的任何函数。
p_dist
最初被设想为概率密度函数,该函数给出了连接具有公制距离的两个节点的概率r
分开。这里的实现允许更随意地定义p_dist
它们不需要对应于有效的概率密度函数。这个scipy.stats
包中实现了许多概率密度函数和用于自定义概率密度定义的工具,并将.pdf
统计分布的方法可以在这里使用。如果p_dist=None
(默认设置),指数函数 \(r^{{-2}}\) 是使用的。- seed整数、随机状态或无(默认)
随机数生成状态的指示器。见 Randomness .
- 返回
- 图
一种无向和无自循环的随机地理阈值图。
每个节点都有一个节点属性
pos
在欧几里得空间中存储该节点的位置pos
关键字参数或,如果pos
未提供,由此函数生成。同样,每个节点都有一个节点属性weight
它存储所提供或生成的节点的权重。
笔记
如果未指定权重,则通过从具有速率参数的指数分布中随机绘制来将其分配给节点。 \(\lambda=1\) . 要指定来自不同分布的权重,请使用
weight
关键字参数:>>> import random >>> n = 20 >>> w = {i: random.expovariate(5.0) for i in range(n)} >>> G = nx.geographical_threshold_graph(20, 50, weight=w)
如果未指定节点位置,则从均匀分布中随机分配。
工具书类
- 1
Masuda,N.,Miwa,H.,Konno,N.:具有小世界和无标度特性的地理阈值图。物理评论E 71036108(2005)
- 2
Milan Bradonji_,Aric Hagberg和allon G.Percus,《地理阈值图中的巨分量和连通性》,《网络图的算法和模型》(Waw 2007),Antony Bonato和Fan Chung(eds),第209-216页,2007。
实例
使用指定备用距离度量
metric
关键字参数。例如,要使用 taxicab metric 而不是默认值 Euclidean metric ::>>> dist = lambda x, y: sum(abs(a - b) for a, b in zip(x, y)) >>> G = nx.geographical_threshold_graph(10, 0.1, metric=dist)