2013-07-27 104 views
6

有人可以提供規模和程度如何cubism.jsCubism.js/d3.js比例和範圍

.call(context.horizon() 
      .extent([-100, 100]) 
      .scale(d3.scale.linear().domain([-10,10]).range([-100,100]) 
        ) 
    ); 

例如什麼上面的代碼做一起工作的一些見解?如果這些值是使用隨機數生成器生成的(數字在-10和10之間)

我知道程度用於設置最大值和最小值。

我知道如何定義一個規模,例如:

var scale = d3.scale.threshold().domain([100]).range([0,100]) 
console.log(scale(1)) // returns 0 
console.log(scale(99.9)) // returns 0 
console.log(scale(88.9)) // returns 0 
console.log(scale(100)) // returns 100 

我讀到這裏d3.scales http://alignedleft.com/tutorials/d3/scales/

我的主要問題是,我想定義閾值我的數據,很簡單 0-98紅 98-100粉紅 100藍

或者,也許只是 0-99.99紅 100藍

但是我無法使用我讀過的所有東西來構建可行的東西。

回答

0

我猜你只是想用不同的顏色來表示數據中的異常。如果這是真的,你不需要創建一個域和範圍。

您只需創建一個自定義調色板是這樣的:使用調色板構建

var custom_colors = ['#ef3b2c', '#084594', '#2171b5', '#4292c6', '#6baed6', '#9ecae1', '#c6dbef', '#deebf7', '#f7fbff', '#f7fcf5', '#e5f5e0', '#c7e9c0', '#a1d99b', '#74c476', '#41ab5d', '#238b45', '#006d2c', '#00441b']; 

這個調色板上this page一個額外的紅色上漲到年底。

然後,只需調用自定義顏色是這樣的:

d3.select("#testdiv") 
    .selectAll(".horizon") 
    ... 
    .call(context.horizon() 
       .colors(custom_colors) 
)); 

玩的顏色,直到你找到一個你喜歡的組合。在上面的例子中,只有異常值將變爲紅色,而其餘值將遵循藍色和綠色模式。

希望這會有所幫助!