networkx库

pip install --upgrade networkx

点和边示例:

import networkx as nx
import matplotlib.pyplot as plt
G = nx.Graph()  #初始化一个图
G.add_node('a')
G.add_node('b')
G.add_node('c')
G.add_node('d')
G.add_node('e')
G.add_edge('a','b') #连接a、b得到ab边
G.add_edge('a','d')
G.add_edge('a','e')
G.add_edge('a','c')
nx.draw(G,with_labels=True)
plt.show()

规则图:

import networkx as nximport matplotlib.pyplot as pltRG = nx.random_graphs.random_regular_graph(3,20)  #生成包含20个节点、每个节点有3个邻居的规则图RGpos = nx.spectral_layout(RG)          #定义一个布局,此处采用了spectral布局方式,后变还会介绍其它布局方式,注意图形上的区别nx.draw(RG,pos,with_labels=False,node_size = 30)  #绘制规则图的图形,with_labels决定节点是非带标签(编号),node_size是节点的直径plt.show()  #显示图形

无向图示例:

import networkx as nximport matplotlib.pyplot as plt# BA scale-free degree network# generalize BA network which has 20 nodes, m = 1BA = nx.random_graphs.barabasi_albert_graph(20, 1)# spring layoutpos = nx.spring_layout(BA)nx.draw(BA, pos, with_labels = False, node_size = 30)plt.show()

# 导入相关依赖
from matplotlib import pyplot as plt
import networkx as nx
import numpy as np# 生成随机数据
G = nx.erdos_renyi_graph(50,0.5)# 指定画布大小
plt.figure(figsize=(18,18))# 生成新的图
G_new = nx.Graph()# 依据图中边的数量,生成同样长度的随机权重值
weightList = {}
for i in range(len(G.edges())+1):weightList[i] = np.random.rand()# 将生成的随机权重复制给G_new图
i = 0
for edge in G.edges():i += 1G_new.add_edges_from([(edge[0], edge[1], {'weight': weightList[i]})])
# 绘制G_new图
nx.draw_networkx(G_new)
plt.show()

python复杂网络 学习笔记相关推荐

  1. python中socket模块常用吗_python网络学习笔记——socket模块使用记录

    此文章记录了笔者学习python网络中socket模块的笔记. 建议初次学习socket的读者先读一遍socket模块主要函数的介绍. socket模块的介绍可以参考笔者的前一篇关于socket官方文 ...

  2. python嵩天课堂笔记_[Python机器学习]强化学习笔记(嵩天礼欣老师mooc第三周)

    [Python机器学习]强化学习笔记(嵩天礼欣老师mooc第三周) [Python机器学习]强化学习笔记(嵩天礼欣老师mooc第三周) 目录 强化学习 定义 马尔科夫决策过程 基本元素 值函数 最优值 ...

  3. 无敌python爬虫教程学习笔记(一)

    python爬虫系列文章目录 无敌python爬虫教程学习笔记(一) 无敌python爬虫教程学习笔记(二) 无敌python爬虫教程学习笔记(三) 无敌python爬虫教程学习笔记(四) 本文目录 ...

  4. Python最优化算法学习笔记(Gurobi)

    微信公众号:数学建模与人工智能 github地址:https://github.com/QInzhengk/Math-Model-and-Machine-Learning Python最优化算法学习笔 ...

  5. python数据分析入门学习笔记

    python数据分析入门学习笔记儿 学习利用python进行数据分析的笔记儿&下星期二内部交流会要讲的内容,一并分享给大家.博主粗心大意,有什么不对的地方欢迎指正~还有许多尚待完善的地方,待我 ...

  6. (Python入门)学习笔记二,Python学习路线图

    (Python入门)学习笔记二,Python学习路线图 千里之行始于足下,谋定而后动,冰冻三尺非一日之寒.之所以说这三句话,就是对于下面整理的路线图,即不让自己感觉路途的遥远而感到达到巅峰神界的遥遥无 ...

  7. Python基础语法学习笔记

    Python基础语法学习笔记 想淘宝省钱看我简介,博客www.liangxin.name (一) 一.Print()函数 1.数字可以直接输出,无需加引号 只能理解数字,却读不懂文字.因为数字和数学运 ...

  8. python基础入门学习笔记 (2)

    python基础入门学习笔记 2021年2月8日 1 编译器和解释器的区别 编译器/解释器:高级语言与机器之间的翻译官 2 值传递: print "a = ",a print &q ...

  9. 深度学习(三十二)半监督阶梯网络学习笔记

    半监督阶梯网络学习笔记 原文地址:http://blog.csdn.net/hjimce/article/details/50877704 作者:hjimce 一.相关理论 这几年深度学习声名鹊起,一 ...

最新文章

  1. 抽象类,虚方法,接口
  2. jdbc mysql数据库增删查改_通过JDBC对Mysql数据库进行简单的增删改查
  3. 喷水装置(信息学奥赛一本通-T1424)
  4. mysql in 通配符_mysql必知必会--用通配符进行过滤
  5. linux添加pacman命令,pacman 命令详解
  6. 查理·芒格的合伙人李录:价值投资在中国到底适不适用?
  7. 【回归预测】基于matlab布谷鸟算法优化BP神经网络回归预测(多输入单输出)【含Matlab源码 1555期】
  8. 手机号归属地查询实例
  9. 软件测试简历常见问题
  10. 天猫、抖音各大电商平台关键词调用、价格监控、竞价API
  11. Chrome OS 初体验
  12. 新世纪音乐——天籁之音
  13. iOS 字符串转ascii码,字符串转NSData
  14. UVA 11426 GCD - Extreme (II) (欧拉函数)
  15. 转载linux一句话精彩问答
  16. C++算法进制间的转换
  17. 信号生成和可视化——周期性/非周期性波形
  18. 深度揭密:2015年微商怎么玩才赚钱?
  19. Vi,Java,Ant,Junit的自学报告
  20. jxl导入/导出Excel

热门文章

  1. linux下c md5函数
  2. excel 打开显示安装office自定义项 安装期间出错
  3. java中Error与Exception有什么区别
  4. Android中实现双击屏幕跳转
  5. Ptyhon学习之元组
  6. TAP/TUN Vnet veth
  7. java 课程设计 计算器_JAVA课程设计-计算器(201521123028 李家俊)
  8. 算法 有两个相同大小数组均已按升序排列好 编程计算这两个数组的中位数 C
  9. Linux网络设备子系统
  10. 你知道什么是AVL树吗?