将嵌套的 JSON 数组转换为 Chart.js 输入

Convert nested JSON Arrays to Chart.js input

我似乎无法为 React-Chart.js 正确安排我的数据我目前将我的数据全部放在一个数组中:

[[Array(9)], [Array(9)],[Array(9)], [Array(9)]]

编辑:4 个数组中的每一个在它们自己的数组中都有 9 个 [key, value] 对:

 (9) [Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2)]
 (9) [Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2)]
 (9) [Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2)]
 (9) [Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2)]

将来我希望能够添加更多数组。

我想使用每个数组作为它自己的系列,名称来自另一个来源:

 {
    label: props.name[0],
    data: [
      aminos[0][0],
      aminos[0][1],
      aminos[0][2],
      aminos[0][3],
      aminos[0][4],
      aminos[0][5],
      aminos[0][6]
      etc...
    ]
 },
 {
    label: props.name[1],
    data: [
      aminos[1][0],
      aminos[1][1],
      aminos[1][2],
      aminos[1][3],
      aminos[1][4],
      aminos[1][5],
      aminos[1][6],
      etc...
    ]
 },
...

希望有道理,提前致谢!

下面的代码片段应该会有帮助,我不确定你的源数组的结构,因此概括了这个

//sample data
var recArray = [ 
  [ 
    [ 'key1','value1.1'], 
    ['key2','value2.1'],
    ['key9','value9.1']
  ],
  [ 
    [ 'key1','value1.2'], 
    ['key2','value2.2'],
    ['key9','value9.2']
  ]
];

//result object
lblGroupedRecords = {}

//flattens the nested array
//choose nested level based on your level of nesting
flattenedRecords = recArray.flat(2);

var handle=0;
while(handle<flattenedRecords.length) {
  var key = flattenedRecords[handle++];
  var value = flattenedRecords[handle++];
  (lblGroupedRecords[key] = lblGroupedRecords[key] || []).push(value);
}

console.log(lblGroupedRecords)