在D3.js

时间:2018-06-05 13:22:58

标签: javascript d3.js

在跟随this example更新一行时,我无法使用新数据附加旧数据集。

具体来说,此功能似乎重写整个数据集。

function updateData() {

    // Get the data again
    d3.csv("data-alt.csv", function(error, data) {
        data.forEach(function(d) {
            d.date = parseDate(d.date);
            d.close = +d.close;
        });

        // Scale the range of the data again 
        x.domain(d3.extent(data, function(d) { return d.date; }));
        y.domain([0, d3.max(data, function(d) { return d.close; })]);

    // Select the section we want to apply our changes to
    var svg = d3.select("body").transition();

    // Make the changes
        svg.select(".line")   // change the line
            .duration(750)
            .attr("d", valueline(data));
        svg.select(".x.axis") // change the x axis
            .duration(750)
            .call(xAxis);
        svg.select(".y.axis") // change the y axis
            .duration(750)
            .call(yAxis);

    });
}

我知道我的轴的边界,并希望保持它们不变。我希望该行能够在绘图中爬行,一次更新一个y值。

另请注意,这适用于d3 v3。我正在使用v4 / v5。

我愿意使用图表包,但我还没找到提供此功能的包。

0 个答案:

没有答案