![](/uploads/image/0988.jpg)
鲜花图片大全
pythonNetworkx库绘制有向图,⾃定义并固定各结点坐标Networkx库绘制有向图,⾃定义并固定各结点坐标锦州百姓网新⼿为了做数据结构课程设计,要绘制⼀个有向图,⽹上搜了⼀圈后只有各结点随机分布这种,没到我想要的固定坐标的结点,可能是太简单的。
从化碧水峡漂流下⾯是我⾃⼰写的固定坐标结点绘制有向图代码。
import networkx as nx
import matplotlib.pyplot as plt
def main():
G = nx.DiGraph()
for i in range(1,10):
G.add_node(i, desc='v'+str(i))# 结点名称不能为str,desc为标签即结点名称长白山什么时候去最好
G.add_edge(1,2, name='6')# 添加边,参数name为边权值
G.add_edge(1,3, name='4')
G.add_edge(1,4, name='5')
G.add_edge(2,5, name='1')
G.add_edge(3,5, name='1')
深圳前湾公园好玩吗G.add_edge(4,6, name='2')
G.add_edge(5,7, name='9')
G.add_edge(5,8, name='7')
G.add_edge(6,8, name='4')
G.add_edge(7,9, name='2')
G.add_edge(8,9, name='4')
pos =[(1,3),(1,3),(2,4),(2,2),(2,1),(3,3),(4,1),(5,4),(5,2),(6,3)]# pos列表从第0位开始,但我定义是从结点1开始,这⾥令前两个坐标相同# 按pos所定位置画出节点,⽆标签⽆权值
nx.draw_networkx(G, pos, with_labels=None)
# 画出标签
node_labels = nx.get_node_attributes(G,'desc')
nx.draw_networkx_labels(G, pos, labels=node_labels)北京市地图高清版
# 画出边权值
edge_labels = nx.get_edge_attributes(G,'name')
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)
plt.title('AOE_CPM', fontsize=10)
plt.show()
if __name__ =='__main__':
main()