我在用洛达什,试着用sortBy。
由于某些原因,它排序,但不平等对待整数和浮动。
最后我得到了这个“排序”结果:

使用Chart.js显示:

为什么会这样呢?我的代码:
output = _(dataSet)
.sortBy(output, dimension)
.groupBy(dimension)
.map((objs, key) => ({
dimension: key,
measure: _.meanBy(objs, measure) }))
.value();发布于 2022-10-24 08:53:33
_.groupBy()方法创建具有所选属性值的对象。因为dimension是一个数值属性,所以它们被整数的数值遍历,并作为浮点数的字符串遍历(参见此文章)。
解决方案是在将分组对象转换回数组之后,按实际数值进行排序:
output = _(dataSet)
.groupBy(dimension)
.map((objs, key) => ({
dimension: _.head(objs, 'dimension'),
measure: _.meanBy(objs, measure) }))
.sortBy(output, dimension) // <- sort here
.value();https://stackoverflow.com/questions/74175391
复制相似问题