我正在尝试创建一个时间序列图,其中我的x轴应该是时间,y轴是速度。我从json数组中读取时间和速度值。我可以在互联网上看到许多示例,这些示例仅使用交叉滤波器定义了x轴。我的json(输入到图表中)如下所示。这里仅显示一个示例。
[
{
"Time": "19-Jan-2018 11:24:49.000 UTC",
"Speed": 1.885
},
{
"Time": "19-Jan-2018 11:24:59.000 UTC",
"Speed": 1.875
},
{
"Time": "19-Jan-2018 11:25:00.000 UTC",
"Speed": 1.878
},
{
"Time": "19-Jan-2018 11:25:01.000 UTC",
"Speed": 1.876
}
]
有人可以建议使用dc.js在时间序列图中如何在x轴上标记这些时间并在y轴上标记速度
您可以这样操作:
var cf = crossfilter(data);
var timeDimension = cf.dimension(function(d){ return new Date(d.Time); });
var totalGroup = timeDimension.group().reduceSum(function(d){ return d.Speed; });
var lineChart = dc.lineChart("#line-chart")
.brushOn(false)
.width(800)
.height(200)
.x(d3.time.scale().domain(d3.extent(data, function(d) {
return new Date(d.Time);
})))
.dimension(timeDimension)
.group(totalGroup);
dc.renderAll();
检查工作演示。(由于您提供的数据集中有非常接近的日期,因此在x轴上有一个奇怪的滴答声。对于完整的数据集,它看起来像这样)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句