infoviz的Force Directed Graph中的边缘方向不正确

时间:2012-08-08 07:41:52

标签: infovis

我试图显示像“graphnode6.0 -----> graphnode0.0 -------> graphnode15.0”这样的力图,但是当我构建json对象时,我总是得到“graphnode6。 0 ------> graphnode0.0< --------- graphnode15.0“ 我的JSON对象是

var json = [
{
  "adjacencies": [  
  {
      "nodeTo": "graphnode15.0", 
      "data": {"$type":"arrow",
      "$direction":"['graphnode0.0','graphnode15.0']"}
    }  
  ], 
  "data": {
    '$color': "#83548B", 
    '$type': "circle"
  }, 
  "id": "graphnode0.0", 
  "name": "graphnode0.0"
},
{
  "adjacencies": [    
     {
      "nodeTo": "graphnode0.0", 
      "data": {"$type":"arrow",
      "$direction":"['graphnode6.0','graphnode0.0']"}
    }], 
  "data": {
    "$color": "#83548B", 
    "$type": "circle"
  }, 
  "id": "graphnode6.0", 
  "name": "graphnode6.0"
}

];

我在这个JSON结构中犯了什么错误吗? 谢谢 萨米特

2 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,但多亏了你的快速演示,我想我已经设法解决了我们的问题:)

在方向块内使用双引号。

"$direction":["graphnode1", "nodeZ"]

当我尝试使用单引号时

"$direction":['graphnode1', 'nodeZ']

箭头只会向一个方向渲染。 希望它适合你!

答案 1 :(得分:0)

您正在使用$direction属性的字符串。

"$direction":"['graphnode6.0','graphnode0.0']"

它应该是一个数组。像这样:

"$direction":["graphnode6.0","graphnode0.0"]

See this example code.