GraphX For .Net两个DataEdges从一个DataVertex到另一个

时间:2017-08-02 09:48:42

标签: c# graph spark-graphx

我正在使用GraphX for .Net库根据我的数据构建图表。 我有关系:obj1-> obj2(type1),obj2-> obj3(type1),obj1-> obj2(type2) (type1和type2是一种连接两个对象的线。 我正在以这种方式添加DataVertex

var dataVertex = new DataVertex(obj1.Name);
dataGraph.AddVertex(dataVertex);

然后我添加了DataEdges

var dataEdge = new DataEdge(obj1, obj2) { Text = "type1" };
dataGraph.AddEdge(dataEdge);
dataEdge = new DataEdge(obj2, obj3) { Text = "type1" };
dataGraph.AddEdge(dataEdge);
dataEdge = new DataEdge(obj1, obj2) { Text = "type2" };
dataGraph.AddEdge(dataEdge);

但是当生成图形时(我正在使用BidirectionalGraph)我只看到obj1和obj2之间的一个关系。我应该在代码中添加什么来查看生成的图中的两个关系?我需要看到关系和标签,因为它们代表两个物理对象之间的电缆。 我怀疑两个关系只是叠加在一起。
如果我将allowParallelEdges设置为false,我只会看到第一个关系,如果true则只有第二个关系。

1 个答案:

答案 0 :(得分:0)

我认为你很亲密。尝试将ParallelEdgeDistance设置为某个值。例如:

            logicCore.EnableParallelEdges = true;
            logicCore.ParallelEdgeDistance = 25;