2016-05-30 285 views
0

我有一個餅圖着色切片以下內容。dc.js顏色餅圖顏色與顏色域的顏色

.colorAccessor(function (d) { 
     return d.value.count; 
     }) 
.colors(colorbrewer.YlGn[9]) 
.colorDomain([0, grpXtents[1]]) 

我使用d3.extent

這正常計算grpXtents。當我點擊組中其他圖表上的過濾器時,如何重新計算顏色域的範圍?

謝謝!

+0

問題中沒有足夠的信息。你目前如何創建元素?你指的是什麼其他圖表或過濾器,它們是如何相關的? –

+0

我從ajax請求中獲取元素。我有一個定製的reducer,它給了我d.value.count。 – bashhike

回答

1

您可能不需要自己計算它。請試試這個:

chart.on('preRedraw', function() { 
    chart.calculateColorDomain(); 
}); 

https://github.com/dc-js/dc.js/blob/develop/web/docs/api-latest.md#dc.colorMixin+calculateColorDomain

這也許應該是在colorMixin一個選項而不是要求這個鉤子。

+0

謝謝戈登。它適用於鉤子。就像你剛纔提到的那樣,如果有一個簡單的開關啓用/禁用重新計算過濾器上的colorDomain,它將非常有用。 – bashhike