объединять (объединять) объекты в массиве javascript - PullRequest
0 голосов
/ 15 февраля 2020

In d3.csv("file.csv", function(error, data) инструкция

d3.csv - это помощник, который внутренне использует d3.csv.parse для анализа CSV-данных, загруженных из файла, в массив объектов, а затем передает их в обратный вызов ,

Таким образом, data является переменной обратного вызова, которая содержит массив объектов

На рисунке структура данных data

Вы можете видеть, что заголовки исходного CSV были использованы в качестве имен свойств для объектов данных . Для использования d3.csv таким образом требуется, чтобы ваш CSV-файл имел строка заголовка.

данные - это массив объектов

data (in orange) is a combination of :
- columns array (in red) holding csv headers that means **property names** 
  for the **data objects**
- an array of 6131 elements (in green) holding the values associated with 
  these propertie

Теперь, когда мы закончили описывать желаемую структуру:

Представьте, что у меня есть массив из 6131 элемента (тоже самое как показано на рисунке зеленым цветом)

var dataArray =[];
 for(var i=0;i<6131;i++){
        ddd[i]={x:..,y:...etc};
        dataArray.push(ddd[i]); 
 }

Мой вопрос заключается в том, как построить в обратном порядке ту же идентичную структуру, описанную ранее, и получить те же данные, что и данные, полученные из d3.csv.

var columnsArray=["NOM","PRENOM","SPECIALITE","Full_Address","VILLE","lat","lon"];

Большое спасибо за помощь.

1 Ответ

1 голос
/ 16 февраля 2020

Вы можете прикрепить свойство columns к вашему dataArray объекту:

dataArray.columns = columnsArray;
...