NetworkX是一个用于研究图形和网络的Python库。 NetworkX是根据BSD-new许可证发布的免费软件。可用于创造和操作复杂网络,学习复杂网络的结构及其功能。

有了NetworkX你就可以用标准或者不标准的数据格式加载或者存储网络,它可以产生许多种类的随机网络或经典网络,也可以分析网络结构,建立网络模型,设计新的网络算法,绘制网络。

当然NetworkX单独存在不可能强大,这里春江暮客将使用广泛使用的其他常用python库绘制各种基础的网络图形。

1.绘制最基本的网络图

网络图由节点(node)和连接(edge)构成,在networkx里,pandas的datafrmae每一行代表一个连接里面的点,对应位置产生连接,例子中是from和to的每一个对应位置产生连接。

################导入所需库

import pandas as pd

import numpy as np

import networkx as nx

import matplotlib.pyplot as plt

################绘制网络图

df = pd.DataFrame({ 'from':['A', 'B', 'C','A'], 'to':['D', 'A', 'E','C']})

basic_net=nx.from_pandas_edgelist(df, 'from', 'to')

fig = plt.figure()

nx.draw(basic_net, with_labels=True)

plt.show()

使用NetworkX绘制网络图只需要上面简单的几步。

1.导入数据

basic_net=nx.from_pandas_edgelist(df, ‘from’, ‘to’),当然,networkx支持多种格式数据导入,nx.from_pandas_adjacency详情请看https://networkx.github.io/documentation/latest/reference/convert.html

2.绘制图形

nx.draw(basic_net, with_labels=True)

3.显示

plt.show()

2.节点之间连接颜色大小区别

由于不同节点连接重要性不一样,使用大小不同线段或者颜色连接显得异常重要,这里NetworkX也很方便的提供了这个功能,只需要在绘制过程中制定edge_color即可。

################导入所需库

import pandas as pd

import numpy as np

import networkx as nx

import matplotlib.pyplot as plt

df = pd.DataFrame({ 'from':['A', 'B', 'C','A'], 'to':['D', 'A', 'E','C'], 'value':[1, 10, 5, 5]})

################绘制网络图

color_net=nx.from_pandas_edgelist(df, 'from', 'to', create_using=nx.Graph() )

###制定颜色大小

fig = plt.figure()

nx.draw(color_net, with_labels=True, node_color='skyblue', node_size=1500, edge_color=df['value'], width=10.0)

plt.show()

3.网络图背景颜色设置

在NetworkX里面只需要使用set_facecolor即可设置背景颜色

################导入所需库

import pandas as pd

import numpy as np

import networkx as nx

import matplotlib.pyplot as plt

df = pd.DataFrame({ 'from':['A', 'B', 'C','A'], 'to':['D', 'A', 'E','C'], 'value':[1, 10, 5, 5]})

################绘制网络图

color_net=nx.from_pandas_edgelist(df, 'from', 'to', create_using=nx.Graph() )

###制定颜色大小

fig = plt.figure()

nx.draw(color_net, with_labels=True, node_color='skyblue', node_size=1500, edge_color=df['value'], width=10.0)

fig.set_facecolor("#AAAA00")###仅仅在这里添加

plt.show()

总结

本文介绍了NetworkX包绘制网络图的基本使用介绍,当你还在想如何在python里面绘制网络图的时候,使用NetworkX就对了,详细官方文档请参考NetworkX官方文档。

python画网络图_python3中NetworkX网络图绘制相关推荐

  1. python怎么画人像_教你如何用Python画出心目中的自己

    原标题:教你如何用Python画出心目中的自己 引言:人脸图像的生成在各个行业有着重要应用,例如刑事调查.人物设计.教育培训等.然而一幅逼真的人脸肖像,对于职业画家也要至少数小时才能绘制出来:对于从未 ...

  2. python画苹果标志图片_替换/绘制/分享:让所有 App 拥有 macOS 11 Big Sur 风格的图标...

    原标题:替换/绘制/分享:让所有 App 拥有 macOS 11 Big Sur 风格的图标 前言 Hello 各位不大不小的伙伴们,大家好~ 我是@旅客君.北京时间 2020 年 06 月 23 日 ...

  3. python画窗口_pyqt中图案如何画在子窗口上

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 基本思路是从QWidget派生出一个类重写paintEvent,在里面画图. UI部分代码是这样的 class Ui_Form(object): def ...

  4. python画热力图_Python中绘制场景热力图

    原博文 2019-08-06 15:39 − 我们在做诸如人群密集度等可视化的时候,可能会考虑使用热力图,在Python中能很方便地绘制热力图. 下面以识别图片中的行人,并绘制热力图为例进行讲解. 步 ...

  5. python networkx包,使用Python中NetworkX包绘制深度神经网络结构图

    Python批量自动裁剪图片 Python批量自动裁剪图片 1 用Pythonp批量裁剪图片 2 3 from PIL import Image 4 import matplotlib.pyplot ...

  6. Python画出心目中的自己

    作者 | 李秋键 责编 | 晋兆雨 头图 | CSDN下载自视觉中国 引言:人脸图像的生成在各个行业有着重要应用,例如刑事调查.人物设计.教育培训等.然而一幅逼真的人脸肖像,对于职业画家也要至少数小时 ...

  7. python画函数曲线-2.3python如何绘制二次函数图像

    2.3.1工具 python matplotlib pyplot pyplot四Matplotlib中的模块,封装了很多处理graph的方法.绘制表格,修改表格属性都是用它实现的. 2.3.2例子 二 ...

  8. python画二维散点图-python3实现绘制二维点图

    如下所示: import matplotlib.pyplot as plt plt.plot([1,2,3],[4,5,6],'ro') plt.show()#这个智障的编辑器,,,看来高版本的确修复 ...

  9. python画国际象棋_python图形工具turtle绘制国际象棋棋盘

    本文实例为大家分享了python图形工具turtle绘制国际象棋棋盘的具体代码,供大家参考,具体内容如下 #编写程序绘制一个国际象棋的棋盘 import turtle turtle.speed(30) ...

  10. 用python画数学函数图像教程_Python 绘制你想要的数学函数图形

    Python 非常热门,但除非工作需要没有刻意去了解更多,直到有个函数图要绘制,想起了它.结果发现,完全用不着明白什么是编程,就可以使用它完成很多数学函数图的绘制. 通过以下两个步骤,就可以进行数学函 ...

最新文章

  1. Python 极简实现 IoU
  2. 【Vegas2006】自我介绍for校青春风采大赛
  3. mybatis写当天 当月的数据 时间段数据https://www.cnblogs.com/xzjf/p/7600533.html
  4. Centos7 yum安装Python3.6环境,超简单
  5. Android RelativeLayout和LinearLayout性能分析
  6. 【做题记录】 [JLOI2011]不等式组
  7. java 线程什么时候结束_java线程什么时候让出cpu?
  8. 存储器是计算机的记忆装置,存储器(Memory)
  9. 通宵加班的产品经理,为什么我不建议你买保险?
  10. 4. OD-去除烦人的nag窗口(去除提醒用户购买正版的警告窗口)
  11. 计算机网络 第四章网络层笔记
  12. USBCAN 、便携式 CAN 分析仪 、CAN卡
  13. 看数据模型界两大长老的神仙打架
  14. java程序员简历范文
  15. 百度云推送push的使用
  16. win10添加新硬盘
  17. 最新WIFI分销大师小程序源码+带后端/亲测可用
  18. Vanishing point detection
  19. Re:从0开始的微服务架构:(一)重识微服务架构
  20. OpenBot开源小车

热门文章

  1. android航拍效果,足不出户看遍大好河山!超震撼的航拍全景APP
  2. 法国在华企业名单,坚决抵制!
  3. 三网手机号码归属地查询小程序源码
  4. dat格式文件转shp
  5. Mac/Linux 安装ab(Apache Benchmark)
  6. 熊出没机器人光头强_熊出没:光头强的最强发明,第2件砍树神器,最后1件价值千万!...
  7. 手撕IP核系列——Xilinx FIFO IP核-异步FIFO
  8. 关于token和refresh token
  9. 二手手机验机教程(不拆机)
  10. 华中科技大学计算机学院本科生宿舍,[业余派]告诉你一个真正的华中科技大学...