Tôi đang sử dụng thư viện NVD3 để tạo biểu đồ đường đơn giản dựa trên dữ liệu được tạo trong bộ điều khiển Rails. Mã Tôi đang sử dụng để tạo ra dữ liệu trong Rails là:Biểu đồ đường dây NVD3 Loại không bắt buộcLỗi: Không thể đọc thuộc tính 'x' không xác định
task.task_values.each do |u|
array.push({ :x => u.created_at.to_i * 1000, :y => u.value.to_i })
end
data_label = task.name + " ("+ task_unit +")"
taskValuesList = [{:key => data_label, :values => array}]
data = {:type => "line", :data => taskValuesList}
Sau đó, theo quan điểm của tôi, tôi có mã JS sau:
nv.addGraph(function() {
var chart = nv.models.lineChart()
.x(function(d) { return d.x; })
.y(function(d) { return d.y; });
chart.xAxis
.showMaxMin(false)
.tickFormat(function(d){return d3.time.format("%m/%d/%y")(new Date(d));});
chart.yAxis
.tickFormat(d3.format(',d'));
d3.select('#chart<%= i %> svg')
.datum(data.data)
.transition().duration(500)
.call(chart);
nv.utils.windowResize(chart.update);
return chart;
});
Biểu đồ làm cho đúng, nhưng khi tôi cố gắng điểm dữ liệu di chuột để hiển thị tooltip, tôi nhận được lỗi "của router lỗi Loại: không thể đọc thuộc 'x' không xác định"
Bạn có thể cập nhật câu hỏi của mình với dữ liệu được chuyển đến biểu đồ hay không. – shabeer90
Dưới đây là một số dữ liệu mẫu: [{: key => " Huyết áp tâm trương (mmHg) ",: giá trị => [{: x => 1373403179000,: y => 91}, {: x => 1373403469000,: y => 95}, {: x => 1373403567000,: y => 61}, {: x => 1373404123000,: y => 56}, {: x => 1373404515000,: y => 56}, {: x => 1373404592000,: y => 56}, {: x => 1373404749000,: y => 56}, {: x => 1373405085000,: y => 56}]}] – rushilg
Tôi không có ý tưởng về ruby-on-rails nhưng dữ liệu có thông qua đối tượng JSON không? – shabeer90