首先,我读取了csv文件并用数据填充空数组
//Load dataset
var dataset = [];
var subset = [];
d3.csv("datafile.csv", function(d){
for (var i = 0; i < d.length; i++){
if (d[i].year == 2013)
{
subset.push(d[i].name);
subset.push(d[i].year);
subset.push(d[i].value1);
subset.push(d[i].value2);
subset.push(d[i].value3);
dataset.push(subset.concat());
subset = [];
}
else
{
}
}
});
然后设置xScale
var w = 700; //width of SVG
var xmax = 0.02 //margin of xAxis
var xScale = d3.scale.linear()
.domain([d3.max(dataset, function(d){ return +d[2]; }) + xmax , 0])
.range([0, w]);
我在控制台中检查,数据集已填充,但xScale(Number)返回NaN 但是,如果我复制xScale部分代码并在控制台中执行 xScale(Number)可以使用。