如何select数据

How to select data

我有下面的代码来显示图表

        d3.json("dat.csv", function(error, data) {


        Data.forEach(function(d) {

            d.Data = parseDate(d.Data);
            d.Free = +d.Free;

        });

这是从所有主机上取数据,我想限制它取数据。字段将包含所有主机名。如何检查数据?请帮忙

您可以在收到 d3.json 回复后过滤您的数据。为了清楚起见,我创建了一个新变量 (host1Data):

d3.json("dat.json", function(error, data) {

    var host1Data = data.filter(function(d){
                        return d.host.name === 'host1';
                    });

    host1Data.forEach(function(d) {

        d.Date.Time = parseDate(d.Date.Time);
        d.CPU.Free = +d.CPU.Free;

    });

    // Use host1Data instead of data in the rest of your code
});

或者,您也可以在将数据传递给 svg 时使用 javascript 的过滤功能过滤数据:

var mychart = svg.selectAll(".mychart")
  .data(data.filter(function(d){return d.host.name === 'host1'})
.enter().append("g")
  .attr("class", "mychart");

或者使用d3的过滤功能:

var mychart = svg.selectAll(".mychart")
  .data(data)
.enter().append("g")
  .filter(function(d){return d.host.name === 'host1'}
  .attr("class", "mychart");