networkx.generators.joint_degree_seq.directed_joint_degree_graph
的用法。用法:
directed_joint_degree_graph(in_degrees, out_degrees, nkk, seed=None)
生成具有联合度的随机简单有向图。
- degree_seq:元组列表(大小为 3)
degree 序列包含具有节点 id、in degree 和 out degree 的节点元组。
- nkk:整数词典
有向联合度字典,对于度为 k 的节点(dict 的第一级)和度为 l 的节点(dict 的第二级)说明了边的数量。
- seed:可散列对象,可选
随机数生成器的种子。
- G:图形
具有指定输入的有向图。
- NetworkXError
如果 degree_seq 和 nkk 不能实现为简单的有向图。
参数:
返回:
抛出:
注意:
与无向版本类似:在“while loop” 的每次迭代中,算法选择两个断开的节点 v 和 w,度数分别为 k 和 l,其中 nkk[k][l] 尚未达到其目标,即(对于给定的k,l): n_edges_add < nkk[k][l]。然后它添加边 (v,w) 并且总是将图 G 中的边数增加一。
该算法的智能在于,总是可以在断开的节点 v 和 w 之间添加一条边,对于该边,nkk[degree(v)][degree(w)] 尚未达到其目标,即使一个或两个节点都没有空闲存根。如果节点 v 或 w 没有空闲存根,我们执行 “neighbor switch”,这是一个边重新布线移动,在保持 nkk 不变的同时释放一个空闲存根。
定向版本的不同之处在于邻居交换机可能无法重新布线,但在这些情况下,可以重新分配不饱和节点以代替使用,详细说明和证明请参见 [1]。
该算法继续进行 “while loop” 的 E(图中的边数)迭代,此时给定 nkk[k][l] 的所有条目都已达到其目标值并且构造完成。
参考:
- [1] B. Tillman、A. Markopoulou、C. T. Butts 和 M. Gjoka,
“有向 2K 图的构造”。在过程中。 2017 年 KDD。
例子:
>>> in_degrees = [0, 1, 1, 2] >>> out_degrees = [1, 1, 1, 1] >>> nkk = {1: {1: 2, 2: 2}} >>> G = nx.directed_joint_degree_graph(in_degrees, out_degrees, nkk) >>>
相关用法
- Python NetworkX directed_configuration_model用法及代码示例
- Python NetworkX directed_modularity_matrix用法及代码示例
- Python NetworkX dijkstra_path_length用法及代码示例
- Python NetworkX dijkstra_path用法及代码示例
- Python NetworkX difference用法及代码示例
- Python NetworkX disjoint_union用法及代码示例
- Python NetworkX dinitz用法及代码示例
- Python NetworkX dijkstra_predecessor_and_distance用法及代码示例
- Python NetworkX dedensify用法及代码示例
- Python NetworkX draw_networkx_edge_labels用法及代码示例
- Python NetworkX double_edge_swap用法及代码示例
- Python NetworkX draw用法及代码示例
- Python NetworkX dag_longest_path_length用法及代码示例
- Python NetworkX descendants_at_distance用法及代码示例
- Python NetworkX degree_assortativity_coefficient用法及代码示例
- Python NetworkX dfs_successors用法及代码示例
- Python NetworkX draw_planar用法及代码示例
- Python NetworkX draw_circular用法及代码示例
- Python NetworkX descendants用法及代码示例
- Python NetworkX draw_spectral用法及代码示例
- Python NetworkX degree_mixing_matrix用法及代码示例
- Python NetworkX degrees用法及代码示例
- Python NetworkX degree_pearson_correlation_coefficient用法及代码示例
- Python NetworkX draw_random用法及代码示例
- Python NetworkX draw_shell用法及代码示例
注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.generators.joint_degree_seq.directed_joint_degree_graph。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。