python-3.x - 如何影响图形节点的位置以进行可视化?
问题描述
我有一个Networkx
从 a读取的图表,Dotfile
为了可视化它,我需要影响每个节点的位置 (x,y)。我怎样才能做到这一点 ?
为了可视化,我Plotly
在 python3.6 上使用离线模式,为此我需要边缘和节点的位置。现在,我尝试给出随机值,但这似乎根本不起作用
基本上,我用于绘图的代码是这个:https : //plot.ly/python/network-graphs/ 该算法使用随机创建的 Graph 中的“pos”,但对我来说,我没有这些坐标和我不知道如何生成它们。
解决方案
您要解决的问题称为图形布局。networkx 中有一些图形布局算法:networkx.drawing.layout。这是示例:
import networkx as nx
G = nx.Graph()
G.add_nodes_from([1,2,3,4,5])
G.add_edges_from([(1,2),(2,3),(2,4),(4,5)])
nx.spring_layout(G)
返回所有节点的坐标:
{1: array([-0.73835686, 0.38769421]),
2: array([-0.11386106, 0.22912486]),
3: array([0.14264776, 0.81717097]),
4: array([ 0.21475452, -0.43399004]),
5: array([ 0.49481564, -1. ])}
推荐阅读
- python - Pycharm 无法检测 django 频道
- elasticsearch - Elastic Search 如何选择列并通过过滤器?
- python - 对按一列分组并取决于其他列值的数据框列中的所有值求和
- android - 无法在 Play 商店中将已签名的 APK 投入生产。Andorid App Bundle 的问题
- java - 如何在 Recyclerview SelectionTracker 上正确设置泛型?
- java - 如何解决 Java Collections.sort() 比较方法违反其一般约定异常
- c# - 努力获取已发布文件的 InputStream 的正确字符串表示形式
- r - 使用 Future 包在 R 中进行异步编程
- axios - this$store 函数未定义
- sql-server - 如何为查询中的批量插入中的所有行生成单个 GUID?