鱼C论坛

 找回密码
 立即注册
查看: 1494|回复: 5

复杂网络求解度分布

[复制链接]
发表于 2019-4-1 15:04:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. import networkx as nx
  2. G =nx.random_graphs.barabasi_albert_graph(1000,3)  
  3. print G.degree(0)
  4. print G.degree()  
  5. print nx.degree_histogram(G)
复制代码
  

想要返回节点的度,但运行中一直报错,不知道啥问题??
报错.png
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-1 15:09:10 | 显示全部楼层
你这是py2的print用法
py3   print()要打印的内容放括号里面
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-1 15:50:59 | 显示全部楼层
塔利班 发表于 2019-4-1 15:09
你这是py2的print用法
py3   print()要打印的内容放括号里面

太长时间没敲代码了,这都忘了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-1 15:52:20 | 显示全部楼层
清风慕竹0817 发表于 2019-4-1 15:50
太长时间没敲代码了,这都忘了

不用敲代码真幸福
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-1 19:15:48 | 显示全部楼层
塔利班 发表于 2019-4-1 15:52
不用敲代码真幸福

请教你个问题呗。
  1. import networkx as nx
  2. import matplotlib.pyplot as plt
  3. DD=[]
  4. for n in range(6,1000,1):
  5.     G = nx.random_graphs.barabasi_albert_graph(n,3)
  6.     D=0
  7.     for i in range(1000):
  8.         D=D+G.degree(i)
  9.     DD.extend(D/1000)
  10. x = range(6,1000)
  11. y = DD
  12. plt.loglog(x,y,color="blue",linewidth=2)
  13. plt.show()
复制代码

这个代码思想是:首先创建一个节点数为6的BA网络,然后每次向网络中添加一个度为3的节点,画出网络的平均度随节点总数变化的图。
不知道哪里出错的??
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-1 19:20:53 | 显示全部楼层
没用过networkx,但是目测extend会报错,extend是拼接列表,你是想用append吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-14 23:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表