DimpleJS - 在 getTooltipText 回调中获取原始数据

DimpleJS - Get original data in getTooltipText callback

目标

我想将一些额外的数据传递给 dimple,以便在工具提示中显示。

现在我显示货架上的产品数量和它们被清点的时间。我还想在悬停工具提示中显示其他数据,特别是清点货架上产品的人的姓名。

问题

getTooltipText 的回调只返回一个似乎不包含原始数据的事件。我进入酒窝源查看是否可以将原始数据添加到事件中,但我无法在事件堆栈中找到它。我知道我可以在我的原始数组中查找具有相同 x,y 值的数据,但它需要考虑具有相同 count/timestamp.

的数据

关于如何执行此操作还有其他建议吗?

解决方案

https://github.com/PMSI-AlignAlytics/dimple/issues/152

我刚刚为此回答了 GitHub 问题,但这里的答案供参考:

因为 dimple 对数据集进行聚合,它会忽略任何不构成其数据点定义一部分的字段。在您的情况下,您需要在系列的第一个参数中包含您想要引用的任何其他字段。例如,如果我有一个 SKU 和销量的条形图:

var c = new dimple.chart(svg, data);
c.addCategoryAxis("x", "SKU");
c.addMeasureAxis("y", "Sales Volume");
c.addSeries(null, dimple.plot.bar);
c.draw();

我想在工具提示中添加品牌所有者、品牌、价格等级和包装尺寸,我将使用 addSeries 方法的第一个参数来定义它。注意。这里需要注意的是,此处传入的数组的最后一个元素用于定义颜色,因此在下面的示例中,我传递了一个空字符串以确保所有条形继续保持相同的颜色。我可以根据我想要达到的效果选择任何其他值或 SKU。

var c = new dimple.chart(svg, data);
c.addCategoryAxis("x", "SKU");
c.addMeasureAxis("y", "Sales Volume");
c.addSeries(["Brand Owner", "Brand", "Price Tier", "Pack Size", ""], dimple.plot.bar);
c.draw();

这会将这些字段添加到默认工具提示中,并且如果您希望在自定义工具提示中使用它们,也会使它们可用。