簡體   English   中英

折線圖中的DC.js堆棧未顯示

[英]DC.js stack in line chart not showing

我在折線圖中渲染堆棧時遇到問題。

我有一個減少量,可以計算出三個平均值。 我可以在.group中顯示這些平均值之一,但它在堆棧中不起作用

timeConstChart
.dimension(datesDim)
.group(evalConsReduced,"Buena", function(d){return d.value.buenaAvg}) // works
.stack(evalConsReduced,"Regular",function (d) {return d.value.regularAvg}) // <- Doesn't work
.stack(evalConsReduced,"Mala",function (d) {return d.value.malaAvg}) // <- Doesn't work neither
.x(d3.time.scale().domain([minDate,maxDate]))
.y(d3.time.scale().domain([0,100]));

奇怪的是,如果我忽略該組的“ return d.value.buenaAvg”,則可以從d.value.regularAvg中獲取結果

jsfiddle

注意:這是我第一次使用交叉過濾器,但是我已經知道我的reduce函數不是最優的,可以對其進行改進。 這里的任何方向也將不勝感激。

可能可以改善這些歸約功能,但這是正確的基本思想。 您將不得不以某種方式對每個值進行計數,然后計算每個值的平均值。

也許有聰明的方法可以編寫更少的代碼,但是您正在做的事情很清楚。

使用toFixed似乎出了問題-這會返回一個字符串 ,當您嘗試匯總字符串時可能會遇到很多麻煩。

例如,

0.3 + 0.1 === 0.4

'0.3' + '0.1' === '0.30.1'

我認為您的堆棧中也發生了同樣的事情,但是dc.js在某處進行了完整性檢查並拋出了NaN。

這是您的小提琴的叉子,其中的toFixed已移除

正如預期的那樣,這三個堆棧加起來在1處是一條綠線。(我添加了.clipPadding(2)因為否則可能會截斷頂行,很難看到。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM