在Python中生成数字1-15的15个节点,等概率的在前3个数字节点中选取一个数字
时间: 2024-04-14 16:28:28 浏览: 104
要在Python中生成数字1-15的15个节点,并等概率地从前3个数字节点中选择一个数字,可以使用random模块的choice()函数结合NetworkX库来实现。下面是一个示例代码:
```python
import random
import networkx as nx
import matplotlib.pyplot as plt
# 创建一个空的有向图
G = nx.DiGraph()
# 添加节点
nodes = list(range(1, 16))
G.add_nodes_from(nodes)
# 从前3个节点中随机选择一个数字
selected_number = random.choice(nodes[:3])
# 绘制网络图
nx.draw(G, with_labels=True, node_color='lightblue', node_size=800, font_size=10)
plt.title(f"Selected Number: {selected_number}")
plt.show()
```
这段代码首先导入了random、NetworkX和Matplotlib库。然后,创建一个空的有向图 `G`。通过 `add_nodes_from` 方法添加了数字1到15的15个节点。
接下来,使用random模块的choice()函数从前3个节点中随机选择一个数字,并将结果存储在 `selected_number` 变量中。
最后,使用 `nx.draw` 函数绘制网络图。`with_labels=True` 参数用于显示节点的标签,`node_color='lightblue'` 参数设置节点的颜色,`node_size=800` 参数设置节点的大小,`font_size=10` 参数设置标签的字体大小。同时,使用 `plt.title` 函数添加标题,显示被选中的数字。
运行这段代码后,将会弹出一个窗口显示生成的网络图,并在标题中显示被选中的数字。
阅读全文