2016-11-17 12 views
1

次のコマンドを使用してグラフを作成しましたが、エッジを追加する方法を見つけることができません。Gremlin:コンソールを使用してグラフにエッジを追加できません

g = TinkerGraph.open().traversal() 
g.addV('A1').addV('A2').addV('A3').addV('B3'). 

私はエッジを追加するために以下のコマンドのいくつかの変形を試みました。

g.V('A2').addEdge('pre',V('A1')) 
No signature of method: org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal.addEdge() is applicable for argument types: (java.lang.String, org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal) values: [pre, [GraphStep(vertex,[A1])]] 
+0

バージョン:ApacheのTinkerPop 3.2.3 – atulshgl

答えて

2

使用しているバージョンについては言及していないので、Apache TinkerPop 3.2.3を参照します。ここに、add edge stepaddE()のドキュメントへのリンクがあります。

頂点を作成したとき、add vertex stepaddV()はidではなくパラメータとして頂点ラベルをとります。頂点ラベルは通常ユニークではないので、IDを使用する方が良いです。

gremlin> Gremlin.version() 
==>3.2.3 
gremlin> g = TinkerGraph.open().traversal() 
==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard] 
gremlin> g.addV('A1').addV('A2').addV('A3').addV('B3') 
==>v[3] 
gremlin> g.V().valueMap(true) 
==>[id:0,label:A1] 
==>[id:1,label:A2] 
==>[id:2,label:A3] 
==>[id:3,label:B3] 
gremlin> g.V(1L).addE('pre').to(g.V(0L)) 
==>e[4][1-pre->0] 
+0

我々は例えば、頂点のプロパティを使用してエッジを追加することができれば、あなたも言うことができます。名?私はドキュメントの次の行を理解していませんでした。 (2) ' – atulshgl

+1

@atulshgl上記の行には、' '' software'''というラベルを持つすべての頂点があります。 ( 'a ')' 'として宣言されていた頂点' '' a''( '' ')をラベル' '' createdBy'''の端を使って接続します –

関連する問題