【问题标题】:Graph-tool: How to access properties of a copied graph图表工具:如何访问复制图表的属性
【发布时间】:2017-06-20 07:33:18
【问题描述】:

我创建了图 g 的过滤图,并希望将其用作新图。据我所知,属性也被复制了,但我怎样才能访问它们?如果我使用“权重”,它将是 g 而不是 sub 的属性映射。

weight = g.new_edge_property('float')
vfilt = g.new_vertex_property('bool')
...
old_sub = gt.GraphView(g, vfilt)
sub = gt.Graph(old_sub, directed=False, prune=True)

如果属性没有复制到sub,那怎么办。由于新图的顶点数不同,因此顶点的索引发生了变化。

非常感谢

【问题讨论】:

    标签: python python-2.7 graph graph-tool


    【解决方案1】:

    在复制之前,您必须将属性设置为“内部”:

    weight = g.new_edge_property('float')
    vfilt = g.new_vertex_property('bool')
    ...
    old_sub = gt.GraphView(g, vfilt)
    old_sub.ep.weight = weight   # old_sub.ep is a dictionary of internal properties
    sub = gt.Graph(old_sub, directed=False, prune=True)
    sub_weight = sub.ep.weight   # copy of weight
    

    【讨论】:

      猜你喜欢
      • 2012-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多