我正在處理從數據庫中提取的對象數組;本質上是一個csv文件。樣本對象是這樣的:如何可視化沒有父/子數據結構的關係?
var data = [
{
"name" : "blah",
"number" : 1234,
"associate" : 2234
},
{
"name" : "blurg",
"number" : 2234,
"associate" : null
},
{
"name" : "blarg",
"number" : 3334,
"associate" : null
}
]
我想要做的,是畫有「關聯」,及其相應的對象之間的線路或路徑「父」,雖然它沒有結構作爲父母/兒童。
概念上,這是我在想什麼:
var diagonal = d3.svg.diagonal()
.source(this)
.target(dom_element_whose_number == d.associate);
var filteredData = data.filter(function(d) { return d.associate };
svg.selectAll("path")
.data(filteredData)
.enter()
.append("path")
.attr("d", diagonal);
有什麼建議?我一直對此感到震驚......
你會需要某種結構的,告訴它是什麼源和目標。也就是說,對數據進行預處理,以使您擁有具有「源」和「目標」屬性的元素,並將其傳遞給「.data()」。 –