0

配列の個々の日付がないため、配列インデックスを d3.js の時間範囲にマップしようとしています。値が 1900 から 2000 の間であることはわかっています。

var data = [45,678,490...]; // length 820

var x = d3.time.scale().range([0, width]).domain([new Date(1900, 0, 0), new Date(2000, 0, 0)]);

// line function
var line = d3.svg.line()
    .x(function(d,i) { 
    // here map i to date between domain min / max    
        return x(i); 
    })
    .y(function(d) { 
        return y(d); 
    });

各配列値の日付を手動で計算するよりもスマートな方法はありますか? おそらく、ステップとインクリメントを計算しますか?

4

1 に答える 1

1

別のスケールを使用して、インデックス値から日付にマッピングします。

var arrayScale = d3.time.scale()
                    .domain([0, data.length])
                    .range([new Date(1900, 0, 0), new Date(2000, 0, 0)]);
于 2013-06-04T12:59:27.927 に答える