0

チャートを表示するコードの下にあります

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


        Data.forEach(function(d) {

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

        });

これはすべてのホストからデータを選択しています。データを選択するように制限したいと思います。フィールドにはすべてのホスト名が含まれます。データをチェックする方法は?助けてください

4

1 に答える 1

0

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
});

または、javascript のフィルター関数を使用して、データを svg に渡すときにデータをフィルター処理することもできます。

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");
于 2016-02-10T04:15:02.153 に答える