2

グラフ化したいログ ファイル データがいくつかあります。1 つのログ ファイルの場合、イベントが発生するたびに 1 行がログ ファイルに追加されます。データが次のようになるように取得できます。

data = [
    {
        "click": true,
        "date": "2013-06-23T14:37:27.000Z"
    },
    {
        "click": true,
        "date": "2013-06-23T14:36:02.000Z"
    },
    ...
    ...
    ...
]

ここで、このデータを時系列で表示して、時間の経過とともに発生したクリック数を確認したいと思います。ただし、このデータを間隔 (1 分または 15 分、1 日など) でグループ化して、一定期間に何人の人がクリックしているかを確認する必要があると思います。次に、間隔データをグラフ化します。

時間間隔でデータをグループ化する方法はありますか? d3にはこれを行う方法がありますか? 人力車とコーヒースクリプトも使用しています。

4

1 に答える 1

2

Adam Pearce が提案したように、ここですべての情報を取得できます: http://bl.ocks.org/mbostock/3048166

最初のステップは次のように定義することxです:

var x = d3.scale.linear()
    .domain([0, 120])
    .range([0, width]);

次に、必要なティック数を定義するだけです。

// Generate a histogram using twenty uniformly-spaced bins.
var data = d3.layout.histogram()
    .bins(x.ticks(20))
    (values);

次のようにvalues定義すると:

// Generate a log-normal distribution with a median of 30 minutes.
var values = d3.range(1000).map(d3.random.logNormal(Math.log(30), .4));

だから、秘密はd3.layout.histogram().binsaxis.ticks呼び出しの背後にあります。

于 2013-06-30T21:08:17.730 に答える