【问题标题】:How to connect nodes in a networkx graph?如何连接networkx图中的节点?
【发布时间】:2021-09-23 04:36:24
【问题描述】:

左边是输入,右边是期望的输出:

输入:我得到了一些n。我从 [0, 1] 随机均匀地生成 n 点。所以,这些点是元组 (x, y)。

然后我将此节点列表添加到NetworkX 图形对象中。现在,我想连接边缘,如右图所示。也就是说,图是连接的(您可以使用一定数量的边从任何地方到任何地方),但不一定是 Erdos Renyi 图。

我不确定这种图的术语是什么 - 没有重叠边图?但是是否可以使用 Networkx 为这样的图生成边?

【问题讨论】:

    标签: python networkx


    【解决方案1】:

    从欧几里得空间中的点派生的网络通常称为几何图。没有重叠边的图称为平面图。由于您已将所有边都绘制为直线,因此我假设您对 planar, straight-line graphs (PSLGs) 特别感兴趣。

    several generators for geometric graphs in networkx,但是,我不确定它们中的任何一个是否一定会遵守平面性约束(感觉如果您以智能方式选择阈值参数,您可以强制 geographical_treshold_graph 这样做,但我我想不出解决办法)。

    就我个人而言,我会从我的随机点开始,然后通过计算在scipy.spatial 中实现的Delaunay triangulation 来获得边缘。然后,我将对边缘进行二次采样(取决于任务)并在 networkx/igraph/graph-tool 中创建我的图形对象。

    【讨论】:

      猜你喜欢
      • 2019-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多