我似乎找不到一个简单的例子,图表可以轻松地在时间分组级别之间反弹。假设我有每日数据,并且我希望能够以不同的聚合级别(每日、每周、每月)在图表上显示这些数据。
有没有一种很好的方法可以在没有大量处理的情况下使用 D3(删除所有矩形,并用不同级别分组的新矩形替换)?
我似乎找不到一个简单的例子,图表可以轻松地在时间分组级别之间反弹。假设我有每日数据,并且我希望能够以不同的聚合级别(每日、每周、每月)在图表上显示这些数据。
有没有一种很好的方法可以在没有大量处理的情况下使用 D3(删除所有矩形,并用不同级别分组的新矩形替换)?
既然是时间序列数据,你有没有考虑过刷线/面积图?您可以添加 UI 组件以将画笔过滤器动态设置为特定日期范围。
d3 有一个通用的更新模式,你应该在这种情况下使用它。
约定是有两个功能,一个是设置可视化,另一个是获取数据和更新可视化。
update 函数接收新数据,绑定它,更新现有的 svg(在您的情况下为矩形),然后根据需要添加或删除对象。
Mike Bostock 有一个很棒的 3 部分系列解释这一点,你可以在这里找到:https ://twitter.com/mbostock/status/252496768267333632