我正在尝试制作一个平行坐标图并基于http://bl.ocks.org/jasondavies/1341281示例进行开发。
如果我想使用 DateTime 格式属性作为图中的轴之一,我需要在代码中更改/修改/添加什么?
我正在尝试制作一个平行坐标图并基于http://bl.ocks.org/jasondavies/1341281示例进行开发。
如果我想使用 DateTime 格式属性作为图中的轴之一,我需要在代码中更改/修改/添加什么?
我认为将时间作为自纪元以来的毫秒数添加到 csv 文件就足够了,以下行会将字符串转换为数字:
// Extract the list of dimensions and create a scale for each.
x.domain(dimensions = d3.keys(cars[0]).filter(function(d) {
return d != "name" && (y[d] = d3.scale.linear()
.domain(d3.extent(cars, function(p) { return +p[d]; }))
.range([height, 0]));
}));
p[d]
当到达新列(让我们称之为time
)时,d3.extent
在该特定列的汽车上执行将获得最大值和最小值(作为数字)并将它们映射到范围 [height, 0],以便每当您执行y['time'](value)
和值在范围内[min, max]
,它将被映射到之间的一个值[height, 0]
要获取自 epoch run 以来新日期经过的时间+(new Date())
,构造函数的参数Date
将是您为这种情况决定的参数。
我发现的一个问题是标签(数字将类似于1426573656530
)所以我会使用tickFormat来更改每个轴的标签