2014-12-07 18 views
0

的曲線是否有可能在一個單一的暗號查詢不同節點和一個特定的路徑的邊緣返回。例如,使用電影圖表下面的查詢將單獨返回電影和演員,我想將所有節點返回到一起。使用路徑p =(...)和節點(p)實際上返回節點對,而不管使用不同的節點。 (m:Movie {name:「Rain」}) - (p:Person)return {nodes:collect(distinct {name:m.title}),actors:collect(distinct){name:a。名})鏈接:收集({來源:m.title,目標:a.name})}繪製使用d3js從Neo4j的/暗號JSON輸出

在此先感謝您的幫助, 皮埃爾

+0

順便說一句,我沒使用工會團體的演員和電影無論是。 – Pierre 2014-12-07 21:31:22

+0

你不能像Cypher那樣返回一個JSON對象。考慮備份幾個步驟,並考慮neo4j如何連接到您的JavaScript應用程序。一般來說,你需要從Cypher獲得一個結果集,然後使用單獨的工具(而不是neo4j)將它轉換成適合d3js的JSON對象。 – FrobberOfBits 2014-12-08 17:22:51

回答

0

得到了一些內部的幫助,所以我共享答案。隨着neo'j 2.1.5,人們可以放鬆身心。 查詢以下查詢一次返回路徑中不同節點和不同邊的列表 - 至少它與我的示例一起工作:

match path =(p:Person {Name:'Rain'}) - [] - (M:電影)放鬆節點(路徑)作爲p-放鬆RELS(路徑)爲r 返回{節點:收集(不同p)時,鏈接:收集(DISTINCT {源:ID(的StartNode(R)),目標:ID (終端節點(R))})}

+0

還檢查了應用實例下http://neo4j.com/developer/language-guides,它們都包含代碼轉換暗號結果爲D3 JSON。結構 – 2014-12-10 08:07:04