复杂网络分析库 NetworkX 学习笔记(1):入门本文转载至:http://blog.sciencenet.cn/blog-404069-337442.htmlNetworkX 是一个用 Python 语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进行复杂网络数据分析、仿真建模等工作。我已经用了它一段时间了,感觉还不错(除了速度有点慢),下面介绍我的一些使用经验,与大家分享。一、NetworkX 及 Python 开发环境的安装首 先 到 http://pypi.python.org/pypi/networkx/ 下 载 networkx-1.1-py2.6.egg , 到 http://sourceforge.net/projects/pywin32/ 下 载 pywin32-214.win32-py2.6.exe。假如要用 Networkx 的制图功能,还要去下载matplotlib 和 numpy , 地 址 分 别 在 http://sourceforge.net/projects/matplotlib/和 http://sourceforge.net/projects/numpy/files/。注意都要用Python 2.6 版本的。上边四个包中,pywin32、matplotlib 和 numpy 是 exe 文件,按提示一路 next,比较容易安装。而 NetworkX 是个 egg 文件,安装略微麻烦,需要用 easyinstall 安装。具体方法:启动 DOS 控制台(在“ 运 行 ” 里 输 入 cmd ) , 输 入 C:\Python26\Lib\site-packages\easy_install.py C:\networkx-1.1-py2.6.egg,回车后会自动执行安装。注意我是把 networkx-1.1-py2.6.egg 放到了 C 盘根目录,读者在安装时应该具体根据情况修改路径。安装完成后,启动 “开始 - 程序 - ActiveState ActivePython 2.6 (32-bit) - PythonWin Editor”,在 shell 中输入:import networkx as nxprint nx假如能输出:说明 Networkx 已经安装好了,可以正常调用。关于 Python 语言,假如没有接触过可以找一本 Python 的语法书来看看(推举《Python 精要参考(第二版)》,网上有电子版)。这个语言很简单易学,只要有点编程基础,几天就可以学会它,然后就可以自如的运用它调用NetworkX 了。二、建立图或网络1、无向图在 PythonWin 的 Shell 里输入:import networkx as nx #导入 NetworkX 包,将其重命名为 nxG=nx.Graph() #建立一个空的无向图 GG.add_node(1) #添加一个节点 1G.add_edge(2,3) #添加一条边 2-3(隐含着添加了两个节点 2、3)G.add_edge(3...