【问题标题】:Graph-Tool KCore functionalityGraph-Tool KCore 功能
【发布时间】:2019-08-17 23:32:00
【问题描述】:

我正在深入研究graph-tool,并尝试构建一个图表,它显示了我的顶点的当前进出度。我从网站上查看了sample,这对我来说效果很好,但是当我尝试构建自己的随机图时,所有顶点仅显示“1”作为顶点文本,而不是实数。

我当前的代码如下所示:

g = Graph()
g.set_directed(False)
N = 50

v = g.add_vertex()
vlist = [v]

for i in range(1, N):
  v = g.add_vertex()

  i = randint(0, len(vlist))
  target = vlist[i]

  e = g.add_edge(v, target)

  vlist.append(v)
  vlist.append(target)

graph_draw(g, output_size=[1000, 1000])

结果如下:

到目前为止一切都很好,但是当我通过...计算 kcore 时...

kcore = kcore_decomposition(g)

...并像...一样绘制图形

graph_draw(g, output_size=[1000, 1000], vertex_fill_color=kcore, 
       vertex_text=kcore)

..结果如下:

这确实不是正确的结果。如果我使用以下代码检查最大的组件:

largest = label_largest_component(g)
print(largest.a)

我会得到一个精确的 50 乘以 1 的列表。 我有什么想念的吗?

我缩小了图片的大小,只是在这里上传了小于 2MB 的图片。所以这就是为什么当前的大小不像代码中提到的那样是 1000x1000。

【问题讨论】:

    标签: python python-3.x graph-tool


    【解决方案1】:

    你得到的结果实际上是正确的。您的图是一棵树,因此所有节点都属于 1-core。它也是相连的,所以只有一个组件。

    【讨论】:

      猜你喜欢
      • 2017-06-08
      • 1970-01-01
      • 1970-01-01
      • 2020-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多