📜  使用Python networkx 的杠铃图

📅  最后修改于: 2021-10-25 05:03:04             🧑  作者: Mango

先决条件: networkx

杠铃图有多种定义。最常用的是 n-barbell 图,它是通过将一个完整图的两个副本与 n 个节点连接而获得的简单图。在本文中,我们将看到如何使用Python使用杠铃图。

n-barbell 图的例子:

示例 1:

如果 N=3 节点,则图形将显示为数字:

示例 2:

如果 N=4 节点,则图形将显示为数字:

分析:

1.节点总数(在n-barbell图中):

The Total number of Nodes = 2*N

2.总边数(在n-barbell图中):

Total number of edges = 2*number of edgesin complete graph + 1
=2*(n*(n-1)/2)+1 = n*(n-1) + 1

特性:

  1. 杠铃图包含循环。
  2. 杠铃图每两个节点之间有一条路径连接。
  3. 它在 2 个完整图形之间架起了一座桥梁。
  4. Bridge 中可能有也可能没有节点。

使用Python 的杠铃图:

它是在Python使用networkx库和matplotlib库的barbell_graph(n, m)函数实现的。

  • networkx库库中Python用于实现和分析Python不同种图形(数据结构)。安装使用这个命令:
pip install networkx
  • matplotlib 库: Python的库,用于实现和分析Python的各种功能。安装使用这个命令:
pip install matplotlib

barbell_graph(n, m) :它返回一个杠铃图,其中包含两个完整的 n 个节点图,这些图通过中间的 m 个节点桥连接。

方法:

  • 导入 networkx 和 matplotlib 库。
  • 使用上面提到的 nx.barbell_graph(n, m)函数创建一个 networkx 图对象 G。
  • 使用 nx.draw_networkx(G)函数打印图形。

示例 1:

Python
# import module
import networkx as nx  
import matplotlib.pyplot as plt 
  
# graph created
res = nx.barbell_graph(4, 2) 
nx.draw_networkx(res)


Python3
import networkx as nx  
import matplotlib.pyplot as plt
  
res = nx.barbell_graph(4, 0) 
nx.draw_networkx(res)


Python的杠铃图

解释:

当我们将 (4,2) 作为参数传递给 nx.barbell_graph()函数被分配了一个图,其中包含 4 个节点集群,由 2 个节点组成的桥连接。最后,我们使用 draw_networkx(G)函数将输出作为图 G 的视图。

示例 2:

蟒蛇3

import networkx as nx  
import matplotlib.pyplot as plt
  
res = nx.barbell_graph(4, 0) 
nx.draw_networkx(res)

输出:

如果您希望与专家一起参加现场课程,请参阅DSA 现场工作专业课程学生竞争性编程现场课程