web-dev-qa-db-fra.com

Importation de données à partir de .csv à l'aide de d3.js

J'essaie d'importer des données à partir d'un fichier .csv en utilisant d3.js. J'ai du mal à le faire, et je me demandais si quelqu'un pouvait donner un coup de main. Mon fichier .csv est formaté comme suit:

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

J'essaie de charger les données en utilisant le code suivant:

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

Cependant, je reçois juste un [] vide dans la console. Quelqu'un peut-il signaler mon erreur?

19
araspion

Changez-le en:

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

Vous devez inspecter l'ensemble de données à l'intérieur du rappel, une fois que vos données sont retournées.

21
Andy Thornton