仍然使用DC.JS来获得一些为我们的工具性能而编写的分析工具。非常感谢你有这个图书馆。
我想要展示的是,对于给定的一组数据,哪些菜谱设置时间是最糟糕的。只要你向整个团队展示,一切都会好起来。当您只在topN上使用.rowscap显示指定的rowChart时,会发生以下情况:
图表将显示正确的条形图,它们甚至被正确地排序,但是图表首先选择了topN未过滤的条形图,然后对它们进行排序。我希望它从有序列表中选择topN,而不是相反。请看小提琴曲的演示。(http://jsfiddle.net/za8ksj45/24/)
in the fiddle, the longest setup time belongs to recipeD.
But if you have more than two recipes selected before recipeD
it is dropped of the right (top2) chart.
line 099-110: reductio definition
line 120-140: removal of empty bins (works okay)(这与戈登先前帮助解决的一个问题非常相似(https://stackoverflow.com/questions/28145149/dc-js-rowchart-topn-without-zeros),我从该解决方案中重用了代码。当我把它和reductio.js库结合起来时,它出了问题。)
我想我不会在某个地方返回还原剂组的价值部分,但一直无法弄清楚。任何帮助都将不胜感激。
发布于 2015-04-19 21:38:13
问题是,在您.slice(0,n)组在您的函数中删除空回收箱时,组没有排序,因此您有效地得到了一个随机的2个组,而不是前两个组。这在未经过滤的视图中是明确的,因为"top2“视图显示了”所有“视图中的第二组和第三组,而不是实际的前2组(至少对我来说是这样)。
前面的示例之所以有效,是因为在默认情况下,交叉筛选器的标准组是有序的,但是对于一个复杂的组,比如您要用Reductio生成的组,它应该按什么顺序排序呢?它不可能知道,所以还原论一点也不乱排序,我想这意味着它是按值属性排序的,它是一个对象。
您需要添加一行按平均顺序排列FactsByRecipe组,我认为它应该可以解决您的问题:
FactsByRecipe.order(function(d) { return d.avg; });请注意,在跨筛选器组上只能有一个排序,所以如果您想为该组的多个属性显示"top X“,则需要创建另一个包装器(如remove空回收箱包装器),但要让"top”函数按照所需的顺序对组进行重新排序。
祝好运!
https://stackoverflow.com/questions/29681216
复制相似问题