後私は折れ線グラフを有します。しかし、プロットが三角形になるように1つの変更を加える必要があり、一連の不規則な三角形を見ることができます。私はYのすべての点の後に、0に落ちて新たに開始する必要があります。私は、データポイントを明示的に追加して0にすることでこれを達成できることは分かっていますが、追加のデータポイントを作成せずにデータポイントを行うことができるかどうかは不思議です。dc.js折れ線グラフは、各点
HTML:
<div id="line-chart"></div>
<div id="log">Incoming Data:</div>
JS:
var startDate = new Date("2011-11-14T16:17:54Z");
var currDate = moment(startDate);
var cf = crossfilter([{date: startDate, quantity: 1}]);
AddData();
var timeDimension = cf.dimension(function(d){ return d.date; });
var totalGroup = timeDimension.group().reduceSum(function(d){ return d.quantity; });
var lineChart = dc.lineChart("#line-chart")
.brushOn(false)
.width(800)
.height(200)
.elasticY(true)
.x(d3.time.scale().domain([startDate, currDate]))
.dimension(timeDimension)
.group(totalGroup);
dc.renderAll();
window.setInterval(function(){
AddData();
lineChart.x(d3.time.scale().domain([startDate, currDate]));
dc.renderAll();
}, 800);
function AddData(){
var q = Math.floor(Math.random() * 6) + 1;
currDate = currDate.add('day', 5);
cf.add([{date: currDate.clone().toDate(), quantity: q}]);
$("#log").append(q + ", ");
}
CSS:
#log{
clear:both;
}
おかげで、
ヴィッキー
「データポイントをポイント0に明示的に追加することでこれを達成できることはわかっています。私はそれが唯一の方法だと思うでしょう。 –
入力データに追加する必要はありません - チャートで見られるデータを前処理できます「偽のグループ」を使って私は例を描こうとします。しかし、あなたがなぜこれをやりたいのかをもう少し詳しく述べれば、それは助けになるでしょう。データは実際にゼロになりますか? – Gordon