📜  networkx 绘制三方图 - Python (1)

📅  最后修改于: 2023-12-03 14:44:34.464000             🧑  作者: Mango

NetworkX 绘制三方图 - Python

在网络上,三方交互和互动是常见的。三方图是网络分析中的一种图形表示方法,其中节点被分为三类,例如用户、产品和评论。本教程将介绍如何在 Python 中使用 NetworkX 库绘制三方图。

安装 NetworkX 库

使用 pip 安装 NetworkX 库:

pip install networkx
创建三方图

以下是 NetworkX 创建三方图的基本步骤:

  1. 创建一个空图;
  2. 使用 add_nodes_from() 方法将节点添加到图中,并为每个节点指定类别;
  3. 使用 add_edges_from() 方法将边添加到图中。

以下是创建三方图的示例代码:

import networkx as nx
import matplotlib.pyplot as plt

# 创建空图
G = nx.Graph()

# 添加节点
users = ['Alice', 'Bob', 'Charlie']
G.add_nodes_from(users, bipartite=0)
products = ['Apple', 'Banana', 'Cherry']
G.add_nodes_from(products, bipartite=1)
reviews = [('Alice', 'Apple'), ('Bob', 'Banana'), ('Charlie', 'Cherry'), ('Charlie', 'Apple')]
G.add_edges_from(reviews)

# 绘制三方图
plt.figure(figsize=(6, 6))
pos = nx.bipartite_layout(G, users)
nx.draw_networkx_nodes(G, pos, nodelist=users, node_color='g')
nx.draw_networkx_nodes(G, pos, nodelist=products, node_color='r')
nx.draw_networkx_edges(G, pos, edgelist=reviews)
nx.draw_networkx_labels(G, pos, font_color='w', font_size=10)
plt.axis('off')
plt.show()

上述代码将创建一个包含 3 个用户、3 个产品和 4 条评论的三方图,并将其绘制出来。其中,用户用绿色节点表示,产品用红色节点表示,评论用边表示。

结语

使用 NetworkX 库,我们可以简单易用地绘制三方图。该图形可用于网络分析、社交网络分析、推荐系统和协同过滤等领域。