Я пытаюсь извлечь данные imdb из csv и поместить два его элемента в массив объектов. Есть 10 полей. Я хочу использовать только 2 в своей диаграмме. Я пробую это:
var mydata;
// Grab the data
d3.csv('./movies.csv', function(csv){
csv.forEach(function(d){
mydata += {rating: d.imdbRating,
winsNoms: d.WinsNoms };
});
});
console.info(mydata);
Может ли кто-нибудь точно объяснить, что здесь происходит и почему я получаю undefined, когда пытаюсь вывести свои данные в последней строке? Наконец, как мне изменить его, чтобы он работал?
Сначала вам нужно объявить пустой массив. Затем вы можете вставлять в него предметы.
Чтобы использовать только часть набора, вы можете использовать «slice» для усечения массива.
var mydata = [];
// Grab the data
d3.csv('./movies.csv', function(csv){
csv.forEach(function(d){
mydata.push({rating: d.imdbRating,
winsNoms: d.WinsNoms });
});
});
console.info(mydata);
Вы должны помещать объекты в массив. См. Корректировки ниже:
var mydata = [];
// Grab the data
d3.csv('./movies.csv', function(csv){
csv.forEach(function(d){
mydata.push({
rating: d.imdbRating,
winsNoms: d.WinsNoms
});
});
});
console.info(mydata);