d3 Js

2016-12-06 21 views
0

の誤差を取得しています。角度2のアプリケーション内でD3 Jsを使用して棒グラフを作成しています。私はD3のV4.4を使用して行の下にエラーの下に取得していますd3 Js

.domainを(d3.range(N))

var n = 20, // number of samples 
     m = 4; // number of series 

    var data = d3.range(m).map(function() { return d3.range(n).map(Math.random); }); 

    var margin = { top: 20, right: 30, bottom: 30, left: 40 }, 
     width = 960 - margin.left - margin.right, 
     height = 500 - margin.top - margin.bottom; 

    var y = d3.scaleLinear() 
     .domain([0, 1]) 
     .range([height, 0]); 

    var x0 = d3.scaleBand() 
     .domain(d3.range(n)) 
     .range([0, width], .2); 

    var x1 = d3.scaleBand() 
     .domain(d3.range(m)) 
     .range([0, x0.range()]); 

    var z = d3.scaleOrdinal(d3.schemeCategory10); 

エラー、

error TS2345: Argument of type 'number[]' is not assignable to parameter of type 'string[]'. 
Type 'number' is not assignable to type 'string'. 

答えて

1

エラーは、d3.scaleBand().domainが文字列の配列を引数として必要としていることを伝えています。数字の配列数字を文字列に強制するだけです。

d3.scaleBand() 
    .domain(d3.range(N).map((d) => d+"")) 
    .range([0, width], .2);