2016-08-17 72 views
1

我想限制在dc.js圖表​​中的刷子的寬度,例如,所以用戶不能縮小到X以下。我還想讓它與舍入一起工作,所以如果我有一個四捨五入到幾個月的時間尺度,然後我想說,不要讓用戶縮小到2個月以內,但仍然會保持離散的月份邊界。而且,我還希望按照順序進行類似的操作,使用畫筆只能選擇單個值並捕捉這些值。這可能嗎?在dc.js(有序)圖表中限制畫筆寬度?

回答

2

dc.js刷具有extent(),它給出畫筆的兩端。人們可以發現一個末端,然後使用條件來限制刷的「範圍」 ......

喜歡的東西:

// grab the two ends of the brush 
var extent = brush.extent(); 
    if ((extent[1] - extent[0]) > myBiggestBrush) { 
    console.log("Extent too large"); 
extent[1] = extent[0] + myBiggestBrush; 
} 
//then use the extent in the brush 
d3.select("g.brush") 
    .call(brush.extent(extent)); 

爲了保持刷單臺 - 退房: https://bl.ocks.org/nbremer/d8dff2fa37345d54f9e58eb74db460d0

+0

此外,還有[chart.round](https://github.com/dc-js/dc.js/blob/develop/web/docs/api-latest.md#coordinategridmixinroundround--function--coordinategridmixin)和無證但可覆蓋的[chart.extendBrush](https://github.com/dc-js/dc.js/blob/develop/src/coordinate-grid-mixin.js#L1018-L1028),它們在改變後修改刷子秒。 – Gordon