我的resultSet看起来像这样:
0: Object { "Error.type": "A", "Error.criticity": "ORANGE", "Error.count": 10 }
1: Object { "Error.type": "B", "Error.criticity": "ORANGE", "Error.count": 8 }
2: Object { "Error.type": "B", "Error.criticity": "GREEN", "Error.count": 6 }
3: Object { "Error.type": "C", "Error.criticity": "ORANGE", "Error.count": 5 }
4: Object { "Error.type": "C", "Error.criticity": "GREEN", "Error.count": 1 }
5: Object { "Error.type": "A", "Error.criticity": "GREEN", "Error.count": 1 }
我想通过它的轴心来获得这个结果:
0: Object { "Error.type": "A", "ORANGE": 10, "GREEN": 1}
1: Object { "Error.type": "B", "ORANGE": 8, "GREEN": 6 }
2: Object { "Error.type": "C", "ORANGE": 5, "GREEN": 1}我可以使用tablePivot来做这件事吗?如果是,如何设置pivotConfig
最终目标是将这个格式化的resultSet呈现为stacked barchart with Recharts。
我试过了:
resultSet.tablePivot({
x: ['Error.type'],
y: ['Error.criticity', 'Error.count'],
})它会返回
0: Object { "Error.type": "A", "Error.criticity": "ORANGE", "Error.count": undefined }
1: Object { "Error.type": "B", "Error.criticity": "ORANGE", "Error.count": undefined }
2: Object { "Error.type": "C", "Error.criticity": "ORANGE", "Error.count": 5 }和
resultSet.tablePivot({
x: ['Error.type'],
y: ['Error.criticity', 'measures'],
})它会返回
0: Object { "Error.type": "A", "Error.criticity": "GREEN", "Error.count": 1 }
1: Object { "Error.type": "B", "Error.criticity": "GREEN", "Error.count": 6 }
2: Object { "Error.type": "C", "Error.criticity": "GREEN", "Error.count": 1 }在这两种情况下,我都会丢失一些信息。
发布于 2021-01-23 05:31:56
我相信你需要一个这样的pivotConfig:
resultSet.tablePivot({
x: [ 'Error.type' ],
y: [ 'Error.criticity', 'measures' ]
})旋转后的结果将如下所示,这几乎就是您预期的结果,对吧?
[
{Error.type: "A", ORANGE,Error.count: "10", GREEN,Error.count: "1"},
{Error.type: "B", ORANGE,Error.count: "8", GREEN,Error.count: "6"},
{Error.type: "C", ORANGE,Error.count: "5", GREEN,Error.count: "1"}
]您可以在Cube.js documentation中阅读有关pivotConfig的更多信息。
https://stackoverflow.com/questions/65848469
复制相似问题