1

x 軸に時間がかかり、y 軸に他の resp 値がかかる時系列の折れ線グラフをプロットしています。それには助けが必要です。次のコードでは、グラフはプロットされません。線(軸)とラベルのみが表示され、グラフも軸上の値も表示されません。

data = [{"date": "31-03-2015 11:05:36", "snr": 3.2}, {"date": "31-03-2015 11:05:36", "snr": 4.9},...{"date": "31-03-2015 11:05:36", snr: 5.0}];

var parseDate = d3.time.format("%d-%m-%Y %H:%M:%S").parse;
        data.forEach(function(d) {
                     d.date = parseDate(d.date);
                     });

var dimByTime = cf.dimension(function(d) { return d.date;});
        var groupForSNR = dimByTime.groupAll();
        groupForSNR.all = function() { return 1; };

var snrAP = dc.lineChart("#snrAP");
        snrAP
        .dimension(dimByTime)
        .group(groupForSNR).valueAccessor(function(d) { return d.value.snr; })
        .x(d3.time.scale())
        .xUnits(d3.time.day);
dc.renderAll();

snrY軸と対応timeするX軸に表示したい。

4

1 に答える 1

2

まあ、私はそれを自分で修正しました。最適な解決策ではないかもしれませんが、それでも私の目的には役立ちます。これが変更されたコードです...

var dimByTime = cf.dimension(function(d) { return d3.time.minute(d.date);});
        var groupForSNR = dimByTime.group().reduce(
                                                   function reduceAdd(p, v) { return v.snr; },
                                                   function reduceRemove(p, v) { return v.snr; },
                                                   function reduceInitial() { return 0; });
        groupForSNR.dispose();

var snrAP = dc.lineChart("#snrAP");
        snrAP
        .dimension(dimByTime)
        .group(groupForSNR)
        .x(d3.time.scale().domain([new Date(2015, 02, 21), new Date()]))
        .xUnits(d3.time.minute)
        .title(function(d){ return "Time: " + d.data.key.toDateString() + "\nS/N Ratio: " + numFormat(d.data.value); })
        .xAxis().ticks(5);
于 2015-03-31T12:14:18.240 に答える