2013-04-02 36 views
18

Tôi đang cố nhập một số dữ liệu từ tệp .csv bằng d3.js. Tôi đang gặp khó khăn khi làm điều này, và đã tự hỏi liệu có ai có thể giúp một tay không. tệp .csv của tôi được định dạng như sau:Nhập dữ liệu từ .csv bằng d3.js

max_i,min_i,max_f,min_f 
-122.1430195,-122.1430195,-122.415278,37.778643 
-122.1430195,-122.1430195,-122.40815,37.785034 
-122.4194155,-122.4194155,-122.4330827,37.7851673 
-122.4194155,-122.4194155,-122.4330827,37.7851673 
-118.4911912,-118.4911912,-118.3672828,33.9164666 
-121.8374777,-121.8374777,-121.8498415,39.7241178 
-115.172816,-115.172816,-115.078011,36.1586877 
-82.5618186,-82.5618186,-79.2274115,37.9308282 
-79.9958864,-79.9958864,-80.260396,40.1787544 
-74.1243063,-74.1243063,-74.040948,40.729688 
-106.609991,-106.609991,-106.015897,35.640949 

Tôi cố gắng để tải dữ liệu bằng cách sử dụng đoạn mã sau:

var dataset = [] 
d3.csv("data.csv", function(data) { 
    dataset = data.map(function(d) { return [ +d["max_i"], +d["min_i"] ]; }); 
}); 
console.log(dataset) 

Tuy nhiên, tôi chỉ nhận được một sản phẩm nào [] trong giao diện điều khiển. Bất cứ ai có thể chỉ ra sai lầm của tôi?

Trả lời

20

Thay đổi nó để:

var dataset = [] 
d3.csv("data.csv", function(data) { 
    dataset = data.map(function(d) { return [ +d["max_i"], +d["min_i"] ]; }); 
    console.log(dataset) 
}); 

Bạn cần phải kiểm tra dữ liệu bên trong gọi lại, một khi dữ liệu của bạn sẽ được trả về.

+0

Cảm ơn - sự cố hiện tại tôi đang gặp lỗi mới. Đây là những gì giao diện điều khiển được in ra. 'Loại không bắt buộcLỗi: Không thể gọi phương thức 'bản đồ' của undefined example.html: 63 (chức năng ẩn danh) example.html: 63 (chức năng ẩn danh) d3.v2.min.js: 1 r d3.v2. min.js: 2 r.onreadystatechange' – araspion

+0

Tôi đã chỉnh sửa phản hồi của mình, tôi nên chú ý. Vì bạn đang sử dụng v2, không có đối số lỗi. –

+0

Cảm ơn - Tôi đoán tôi hơi bối rối về phạm vi ở đây. Tại sao tôi cần phải kiểm tra tập dữ liệu bên trong cuộc gọi lại, mặc dù tôi đang gán dữ liệu cho một biến toàn cục, tôi định nghĩa bên ngoài hàm d3.csv()? – araspion

Các vấn đề liên quan