Javascript 如何格式化饼图 DataTable 的 json 值

Javascript how to format json values for pie chart DataTable

我有一个 API returns 100 行很多不同的 json 数据 包括 HTTP 状态:

{"data": [{"status": 409},{"status": 200},{"status": 404},{"status": 200},{"status": 200},{"status": 200}]}

我想制作一个饼图,它需要这样的数据表:

['status', count],
['200', 4],
['404', 1],
['409', 1]

完成此任务最优雅的方法是什么?我对 vanilla Javascript 比较熟悉,但会接受 Jquery 或其他解决方案。

我原以为有一个简单的库 (?) 可以让我从我的 json 中选择“状态”,它会自动将其格式化为饼图(任何饼图 - 虽然我我正在尝试 Google 图表开始)——但我还没有找到这样的图书馆。

我试过的... 我列出了要学习如何完成的事情 ...假设没有“图书馆”或简单的方法select,计数(也可能从最低到最高)Google 或其他饼图的 json 数据,这看起来像一个不错的计划,还是有更好的方法?

感谢您的任何建议。

我相信 array.reduce 循环可以解决问题。

let data = {
  "data": [{
    "status": 409
  }, {
    "status": 200
  }, {
    "status": 404
  }, {
    "status": 200
  }, {
    "status": 200
  }, {
    "status": 200
  }]
}

let newdata = data.data.reduce((accum, a) => {
 // console.log(accum, a);
  let found = 0;
  accum.forEach((el, index) => {
    if (el[0] == a.status) {
      accum[index][1]++;
      found = 1
    }
  })
  if (!found) accum.push([a.status.toString(), 1])
  return accum
}, [
  ['status', 'count']
]);

console.log(newdata)