我目前在Google Maps上使用API在Protovis上繪製了一串點。它看起來像這樣:http://mbostock.github.com/protovis/ex/oakland.html在谷歌地圖上可視化Protovis網絡佈局
但我不只是想要點 - 我想要連接點的線條顯示網絡。我以爲我可以使用nodes
和links
屬性以及pv.Dot和pv.Line類在Google地圖上使用Protovis網絡佈局(pv.Layout.Network)。節點顯示在我的地圖上,但不是鏈接。其他兩位用戶已經在Protovis討論組上提出了類似的問題,但沒有人回答。它看起來應該很簡單。
我的代碼是基本上與上述相同的奧克蘭犯罪去斑例子,但我改變了代碼的「渲染可視化」部分這樣:
p = new pv.Panel()
.canvas(c)
.left(-x.min)
.top(-y.min);
var pn = p.add(pv.Layout.Network)
.nodes(this.exampleNetwork.nodes)
.links(this.exampleNetwork.links);
pn.link.add(pv.Line)
pn.node.add(pv.Dot)
.left(function() pixels[this.index].x)
.top(function() pixels[this.index].y)
p.render();
這是增加了網絡的一部分可視化的佈局。同樣,節點工作正常,但鏈接不顯示。我會很感激任何幫助!
更新:以下是Protovis中使用網絡佈局的Force-Directed Layout的示例:http://mbostock.github.com/protovis/ex/force.html。是的,我知道Protovis已經過時了。
這裏是什麼我的數據看起來像一個例子:
var exampleNetwork = {
nodes:[
{
nodeName : "Example1",
nodeValue : 100,
group : 0,
lat : 40.726446,
lon : -74.007339
},
{
nodeName : "Example2",
nodeValue : 2048,
group : 0,
lat : 34.073137,
lon : -118.248596
}
],
links:[
{source:0, target:1, value:5}
]
};
你可以創建一個更簡單的代碼版本嗎?和/或建立一個jsFiddle?這很難檢查。作爲一個標記,我認爲原型已被多餘d3.js – Nicolas78 2012-01-03 21:44:01
我想不出一個比奧克蘭更合適的城市來說明犯罪流程 – 2012-01-03 22:57:06