我是初學者總到d3.js所以請樣:)d3.js:數據集陣列瓦特/多y軸值
considering this jsbin example
我有以下數據集:
var dataset = [ [d3.time.hour.utc.offset(now, -5), 1, 10], [d3.time.hour.utc.offset(now, -4), 2, 20], [d3.time.hour.utc.offset(now, -3), 3, 30], [d3.time.hour.utc.offset(now, -2), 4, 40], [d3.time.hour.utc.offset(now, -1), 5, 50], [now, 6, 60], ];
有兩個問題。
是否D3提供了一個更好的方法來找到我的y軸數據(所有列,但第0,第0列是x軸(時間))在我的數據集陣列的最大價值?目前我只是遍歷整個數據集數組並創建第二個數組,不包括第一列。也許除了我應該完全使用的數組之外,還有更好的數據結構?
var data_arr = []; for (row in dataset){ for (col=1;col < dataset[row].length; col++){ data_arr.push(dataset[row][col]); } } var yScale = d3.scale.linear() .domain([0, d3.max(data_arr)]) .range([h - padding, padding]);
一旦多數民衆贊成解決,我還需要確定如何在一般圖形多個y軸值!
svg.selectAll("circle") .data(dataset) .enter() .append("circle") .attr("cx", function(d) { return xScale(d[0]); }) .attr("cy", function(d) { return yScale(d[1]); }) .attr("r", 2);
請看一看圖W這裏/代碼現在完整的上下文:http://jsbin.com/edatol/1/edit 任何幫助表示讚賞之前,我需要多個Y軸值,這工作得很好!