我试图在我的网站上实现d3.js直方图,该直方图从solr响应中获取数据。根据我的研究,我发现Mike Bostock提供了很棒的D3解决方案。其中一个是" Histogram II"这完全符合我的需要。问题是它(以及我发现的所有其他类似解决方案)都带有.csv作为数据源。我想使用数组作为数据源,但在尝试更改输入时失败。
请您给我一个提示,必须更改哪些行使用以下数组,目前基于Mike Bostocks .csv:
my_data = [
{"id": "10097071", "case": "HY285524", "date": "06/02/2015 09:41:19 PM"},
{"id": "21907", "case": "HY291065", "date": "06/07/2015 03:50:00 AM"}
]
提前致谢。
答案 0 :(得分:2)
在Bostock的原始代码中,date
字符串由type
函数解析,由d3.csv
作为行函数调用:
function type(d) {
d.date = parseDate(d.date);
return d;
}
由于您计划使用变量来保存数据数组并完全摆脱d3.csv
,因此您必须以其他方式解析date
字符串。例如,您可以使用forEach
:
data.forEach(function(d){
d.date = parseDate(d.date)
})
以下是演示,我刚刚修改了Bostock使用数组而不是CSV文件的代码:https://bl.ocks.org/anonymous/bb0d820fbca8fbdf0f8827b0edbcbd44。查看forEach
数组之后的data
。