I created a multiple-line chart using nvd3,但無法用一些重要的方式對其進行修改。我想用自己的d3js來推出我自己的,但是我在想加入。如何使用d3js和json格式化爲nvd3創建多行圖表?
我需要爲每個d.key
創建一個路徑,並帶有相應的d.values
。
我的數據格式爲nvd3如下(刪節)。
[
{
"key":"brw-a",
"values":[
["2012-07-11T00:00:00", 0.0 ],
["2012-07-11T23:59:59", 0.0 ],
["2012-07-05T06:31:47", 0.0 ],
["2012-07-05T23:59:59", 0.0 ]
]
},
{
"key":"brw-c",
"values":[
["2012-07-11T00:00:00", 0.0 ],
["2012-07-07T00:00:00", 2.0 ],
["2012-07-05T23:59:59", 4.0 ]
]
}
]
我似乎需要一個內部循環,以訪問存儲在每個d.values
陣列。 I have a working example,演示d.values
如何在一個無用的大環境中出現。
var p = d3.select("body").selectAll("p")
.data(data)
.enter().append("p")
.text(function(d) {return d.key +": " + '[' + d.values + ']'})
我覺得我很接近,而且它有事情做與:
.data(data, function(d) { return d.key; })
更新:我能夠手動環比數據,以創建所需的效果。也許有沒有辦法與聯合做到這一點?當然,除了使用美妙的nvd3 lib之外。請參閱下面的鏈接評論。
var body = d3.select("body")
for (i=0; i < data.length; i++) {
var key = data[i].key
var values = data[i].values
body.append("h3")
.text(key)
for (j=0; j < values.length; j++) {
body.append("p")
.text(values[j][0] + " -- " + values[j][1])
}
}
**更新**:[我能夠手動循環數據以創建所需的效果。](http://bl.ocks.org/3238011)也許沒有辦法通過連接來做到這一點?當然,除了使用美妙的nvd3 lib之外。 – jhau 2012-08-02 22:19:32