这就是我掌握的数据
{ "_id" : ObjectId("kdahfa"), "minTime" : ISODate("2016-04-02T00:00:00.000+0000"), "maxTime" : ISODate("2016-04-02T00:11:00.000+0000"), "Time" : 660.0, "Name" : "Sam" }
{ "_id" : ObjectId("aabhk"), "minTime" : ISODate("2016-04-02T01:00:00.000+0000"), "maxTime" : ISODate("2016-04-02T02:14:25.000+0000"), "Time" : 4465.0, "Name" : "Bob" }
{ "_id" : ObjectId("bak"), "minTime" : ISODate("2016-04-02T19:00:00.000+0000"), "maxTime" : ISODate("2016-04-02T19:52:22.000+0000"), "Time" : 3142.0, "Name" : "Sam" }
我编写了一个python(bottle)代码从mongoDB服务器获取数据并在本地主机上运行。url是http://localhost:8080/result。在
^{pr2}$现在,我希望通过http://bl.ocks.org/dk8996/5449641的帮助来创建一个d3.js图形。我要任务数组在示例.js从url/mongodb获取数据。我应该对d3.js代码做些什么修改才能使它按照我的要求工作?在
d3.json("http://localhost:8080/result", function(error, data) {
data.forEach(function(d) {
d.maxTime = parseDate(d.maxTime);
d.minTime = parseDate(d.minTime);
d.Time = +d.Time;
});
var taskNames = ["Bob", "Sam"];
taskStatus = {
"Bob": "bar",
"Sam": "bar-failed",
};
var gantt = d3.gantt().taskTypes(taskNames).taskStatus(taskStatus);
gantt(tasks);
});
这些是示例.js到目前为止我做的文件。我收到一个错误
未捕获类型错误:数据.forEach不是函数
我希望创建一个返回的d3.js对象的数组,并像在http://bl.ocks.org/dk8996/5449641上一样使用它。在
在这一行中,您只查询数据库中的一个条目,这就是为什么返回的结果是单个对象而不是数组(可能还需要将第一个参数
{}
更改为[]
或其他表示数组的内容,但我不熟悉dbcoll
。在您需要将
find_one
更改为find
或其他内容,您将得到一个数组。在然后在后处理过程中,您需要遍历
^{pr2}$a
的数组:在MongoDB中有一个方法
find
:https://docs.mongodb.com/manual/reference/method/db.collection.find/相关问题 更多 >
编程相关推荐