Javascript 如何在dc.js中创建瀑布图

Javascript 如何在dc.js中创建瀑布图,javascript,dc.js,crossfilter,Javascript,Dc.js,Crossfilter,我正在尝试使用dc.js创建一个瀑布图,似乎瀑布图的示例并不多。如何从中获得类似于此的瀑布图 PS:一旦我得到图表的提示,我会用适当的解决方案更新答案。我正在尝试创建更高级的图表,这些图表可以作为dc.js示例的一部分进行扩展 这可能是对该线程的延迟回复。我添加了一个答案,以防其他人(除了原始海报)遇到相同的问题。代表我答案的代码已打开。我会在这里给出一个解释,因为我的git回购协议仍然缺少一个合适的自述文件(抱歉) 诀窍是创建两个(交叉过滤)组,一个包含真实数据,另一个包含虚拟数据。这个虚拟数

我正在尝试使用dc.js创建一个瀑布图,似乎瀑布图的示例并不多。如何从中获得类似于此的瀑布图


PS:一旦我得到图表的提示,我会用适当的解决方案更新答案。我正在尝试创建更高级的图表,这些图表可以作为dc.js示例的一部分进行扩展

这可能是对该线程的延迟回复。我添加了一个答案,以防其他人(除了原始海报)遇到相同的问题。代表我答案的代码已打开。我会在这里给出一个解释,因为我的git回购协议仍然缺少一个合适的自述文件(抱歉)

诀窍是创建两个(交叉过滤)组,一个包含真实数据,另一个包含虚拟数据。这个虚拟数据被认为是对瀑布图中的列的支持(您也可以将它们视为数据中每一列的阴影)。该虚拟数据的值遵循以下公式:

Dummy value of current column = previous dummy value + previous real data value

不过,上面的公式并没有考虑第一列和最后一列。如果在循环中使用公式,则应手动设置它们(分别在循环之前和之后)。第一列的伪值应为0,最后一列的伪值应等于实际数据中的最后一个值。此外,必须对图表进行一些修饰,以使虚拟列不可见(即使选中/取消选中)。git代码中也提供了此功能。

Hmm,我不知道如何开箱即用。您可能能够提供一个自定义的,因为这就是指定基线的全部内容。但我还没有在dc.js中看到不是从0开始的条形图。好的,我将继续研究并在这里更新。