【问题标题】:How can I add custom data annotations to a dc.js chart?如何将自定义数据注释添加到 dc.js 图表?
【发布时间】:2016-04-27 04:36:09
【问题描述】:

我目前有一个相当基本的复合折线图,如下所示:

我想给它添加以下“动态”注解:

“动态”是指每当用户更改日期过滤器或有画笔选择时,都需要更新这些总计和计算的比率。

我被困在两个方面:

  1. 解决此问题的推荐方法是什么?到目前为止,我已经探索了两条路径:

    • 使用 renderlet 将 SVG 元素绘制到图表中:我无法访问 crossfilter 对象来检索数据。
    • 在图表外部创建自定义 D3 渲染:当日期选择器更改或图表被“刷”时,我无法更新统计信息。此外,这在某种程度上降低了在图表本身中添加注释的灵活性(据我所知)。
  2. 顺便说一句,可以直接在交叉过滤器中计算比率吗?如果有怎么办?

【问题讨论】:

    标签: javascript d3.js charts dc.js crossfilter


    【解决方案1】:

    按照您模拟的方式,我建议您将它们设置为单独的图表。可能最好的选择是使用dc.numberDisplay

    关于计算比率 - 是的,您可以在 Crossfilter 中计算它们,但不要那样做。在单个 Crossfilter 组上维护比率的两个组成部分(使用自定义缩减器,ReductioUniverse)并在报告时进行除法。在 dc.js 中,这意味着计算图表的valueAccessor 中的比率。

    【讨论】:

    • 按照您的建议,我能够使用 dc.numberDisplay 并使用自定义 Crossfilter 组计算 valueAccessor 中的比率。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-11
    • 2020-12-27
    • 2021-01-02
    • 1970-01-01
    相关资源
    最近更新 更多