这是我从here开始的扩展工作。
我想设置unique_liss
中的最后一个元素'm'
出现在像这样的的其余节点的顶部位置。
但是,生成的大多数图像如下:
这是我的密码:
Unique_liss= ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm']
edgesList= [('a', 'b'), ('b', 'c '), ('c ', 'd'), ('d', 'e'), ('d', 'f'), ('e', 'g'), ('f', 'g'), ('g', 'h'), ('h', 'i '), ('i ', 'j'), ('j', 'k'), ('j', 'l'), ('k', 'm'), ('l', 'm')]
import networkx as nx
import matplotlib.pyplot as plt
G = nx.DiGraph()
for node in edgesList:
print('node-', node)
G.add_edge(*node,sep=',')
A = nx.adjacency_matrix(G).A
import numpy as np
seed = 31
pos = nx.spring_layout(G)
plt.figure(figsize=(15,8))
nx.draw(G, pos=pos, with_labels=True, node_size = 1500,
seed=seed, node_color = 'skyblue')
尽管我将for..循环更改为反向循环,如下所示:
for node in reversed(edgesList):
print('node-', node)
G.add_edge(*node,sep=',')
它不保证节点'm'
的最后一个元素位于其余元素的顶部位置。
如果有人能帮助您将最后一个节点设置为永久显示在顶部位置,我们将不胜感激
以下是一种基于感兴趣节点相对于图形中心的相对位置更新布局中位置的方法:
请注意,此代码仅确保节点位于中心的右上角,而不是距离右上角最近的节点
相关问题 更多 >
编程相关推荐