У меня возникла странная проблема с многострочным графиком. График отображает данные из базы данных mysql, где новые строки добавляются через 5 секунд для имитации «живых» данных. Затем график обновляется с интервалом в 5 секунд, когда данные повторно извлекаются из базы данных.Uncaught SyntaxError: Неожиданный токен <
«потоковое» останавливается и начинается - с 3 из этих ошибок каждый раз, когда обновленные данные тянут в:
Uncaught SyntaxError: Unexpected token <
d3_json
respond
Данные применяется к каждому пути/строки следующим образом:
var parameter = svg.selectAll(".parameter")
.data(data, function(d) { return d.key; })
.enter().append("g")
.attr("class", "parameter");
parameter.append("path")
.attr("class", "line")
.attr("d", function(d) { return line(d.values); })
.style("stroke", function(d) { return color(d.key); });
... затем обновленные данные считаются с интервалом в 5 секунд, и график обновляется и обновляется соответственно:
d3.json("LiveData.php", function(error, data)
{
color.domain(d3.keys(data[0]).filter(function(key) { return key == "testSource_id"; }));
data = data.map(function (d) {
d.testSource_id = +d.testSource_id;
d.dateTimeTaken = parseDate(d.dateTimeTaken);
d.reading = +d.reading;
d.parameterType = d.parameterType;
d.parameter_id = +d.parameter_id;
return d;
});
data = d3.nest().key(function(d) { return d.testSource_id; }).entries(data);
x.domain([d3.min(data, function(d) { return d3.min(d.values, function (d) { return d.dateTimeTaken; }); }),
d3.max(data, function(d) { return d3.max(d.values, function (d) { return d.dateTimeTaken; }); })]);
y.domain([d3.min(data, function(d) { return d3.min(d.values, function (d) { return d.reading; }); }),
d3.max(data, function(d) { return d3.max(d.values, function (d) { return d.reading; });})]);
var newparameters = svg.selectAll("g.parameter")
.data(data);
newparameters
.select("path.line")
.transition()
.ease("linear")
.duration(750)
.attr("d", function(d) { return line(d.values); })
svg.select(".x.axis")
.transition()
.duration(750)
.ease("linear")
.call(xAxis);
svg.select(".y.axis")
.transition()
.duration(750)
.ease("linear")
.call(yAxis);
Я не знаю, вызвано ли это тем, как я перехожу к пути/строке или это может быть связано с тем, как данные извлекаются из базы данных? Может ли кто-нибудь помочь?
строка 3: 'data = data.map (function (d) {' закрыть эту функцию где-то;) – Ven
Забытые включают все закрывающие скобки в коде выше, но все они есть в исходном коде. – Newbie