如何在改变时域后更新图表元素

How to update chart elements after changing time domain

本文关键字:更新 元素 时域 改变      更新时间:2023-09-26

首先,让我明确一点:我是一个d3新手!

所以,我有一个基于utc时间域的图表。域是这样的:1天| 3天,我可以通过用户操作从一个切换到另一个。

刷新/过渡x代表24小时到72小时工作正常,但我有困难更新已经在图表中的元素。在改变域名.data()之后,.enter()实际上不会输入(所以我的attr不会更新)

这是一个jsbin与我的问题的完整示例。有线索吗?

您需要非常仔细地遵循这一系列示例。

这是问题代码更正…

      group.enter()
        .append('g')
        .attr('class', 'flight');
      group.attr('transform', function (trip) {
        return 'translate(' + hourDomain(      Math.min.apply(null, _.map(trip.legs, 'departureDateTime'))) + ', 60)';
        });

问题是您只将定位应用于输入选择:只应用于新节点。在第一次调用之后,enter选项始终为空,因为没有新节点。链接的示例将解释它