我正在尝试在gephi / jython中运行图表度量算法。不幸的是,我无法在GraphDistance对象中调用方法'execute'。
这是我需要使用的统计对象类:
>>> type(gd)
<type 'org.gephi.statistics.plugin.GraphDistance'>
图表类的类型是:
>>> type(gu)
<type 'org.gephi.graph.dhns.graph.HierarchicalUndirectedGraphImpl'>
这实际上是HierarchicalGraph的子类:
>>> gu.class.__bases__[0].__bases__[0]
<type 'org.gephi.graph.api.HierarchicalGraph'>
我还按要求提供了'属性'对象:
>>> type(ga)
<type 'org.gephi.data.attributes.AttributeRowImpl'>
但执行表明所需类型不正确:
>>> gd.execute(gu,ga)
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: execute(): 1st arg can't be coerced to org.gephi.graph.api.HierarchicalGraph, org.gephi.graph.api.GraphModel
这对我来说没有多大意义,因为我使用的图形对象的类派生自所需的类。
有什么想法吗?
编辑:我正在使用Gephi Scripting插件(http://wiki.gephi.org/index.php/Scripting_Plugin)和Gephi 0.8.2-beta。这是sys.version:>>> sys.version
'2.5.2 (Release_2_5_2:Unversioned directory, Jan 5 2012, 12:11:16) \n[Java HotSpot(TM) 64-Bit Server VM (Oracle Corporation)]'
答案 0 :(得分:2)
public void execute(GraphModel graphModel, AttributeModel attributeModel);
public void execute(HierarchicalGraph hgraph, AttributeModel attributeModel);
听起来第二个参数应该是 AttributeModel ,而不是 AttributeRowImpl 。