waxman_graph#
- waxman_graph(n, beta=0.4, alpha=0.1, L=None, domain=(0, 0, 1, 1), metric=None, seed=None)[源代码]#
返回一个Waxman随机图。
Waxman随机图模型的位置
n
在矩形域中均匀随机的节点。距离上的每对节点d
用概率的边连接\[p=\beta\exp(-d/\alpha l)。\]此函数使用
L
关键字参数。WAXMAN-1:IF
L
未指定,它被设置为任意节点对之间的最大距离。WAXMAN-2:IF
L
如果指定,则从间隔中随机均匀地选择一对节点之间的距离[0, L]
.
- 参数
- n整型或可迭代
节点数或可迭代节点数
- beta: float
模型参数
- alpha: float
模型参数
- L浮动,可选
节点之间的最大距离。如果未指定,则计算实际距离。
- domain四元组数字,可选
域大小,作为表单的元组给出
(x_min, y_min, x_max, y_max)
。- 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)\).
如果未指定此参数,则使用欧几里得距离度量。
- seed整数、随机状态或无(默认)
随机数生成状态的指示器。见 Randomness .
- 返回
- 图
一个随机的Waxman图,无向和无自循环。每个节点都有一个节点属性
'pos'
它将节点的位置存储在由该函数生成的欧几里得空间中。
笔记
从Networkx2.0开始,参数alpha和beta与它们在概率分布中的通常作用一致。在早期版本中,它们在表达中的位置是相反的。它们在调用序列中的位置也颠倒了,以最小化向后不兼容。
工具书类
- 1
B. M. Waxman, Routing of multipoint connections. IEEE J. Select. Areas Commun. 6(9),(1988) 1617--1622.
实例
使用指定备用距离度量
metric
关键字参数。例如,要使用 taxicab metric" instead of the default Euclidean metric: :>>> dist = lambda x, y: sum(abs(a - b) for a, b in zip(x, y)) >>> G = nx.waxman_graph(10, 0.5, 0.1, metric=dist)