Cubism.js/d3.js比例和范围

Cubism.js/d3.js比例和范围,d3.js,cubism.js,D3.js,Cubism.js,有人能提供一些关于cubism.js中比例和范围如何协同工作的见解吗 .call(context.horizon() .extent([-100, 100]) .scale(d3.scale.linear().domain([-10,10]).range([-100,100]) ) ); 例如,上面的代码做什么?如果使用随机数生成器生成值(介于-10和10之间的数字) 我知道范围用于设置最大

有人能提供一些关于cubism.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.0的文章

我的主要问题是,我想为我的数据定义阈值,非常简单 0-98红色 98-100粉红色 100蓝色

或者只是 0-99.99红色 100蓝色


但是我不能用我读到的所有东西来构建一些有效的东西

我猜您只是想使用不同的颜色来表示数据中的异常。如果这是真的,则不需要创建域和范围

您只需创建如下自定义调色板:

var custom_colors = ['#ef3b2c', '#084594', '#2171b5', '#4292c6', '#6baed6', '#9ecae1', '#c6dbef', '#deebf7', '#f7fbff', '#f7fcf5', '#e5f5e0', '#c7e9c0', '#a1d99b', '#74c476', '#41ab5d', '#238b45', '#006d2c', '#00441b'];
这个调色板是使用调色板构建的,调色板的末端加了一个额外的红色

然后只需调用如下自定义颜色:

d3.select("#testdiv")
  .selectAll(".horizon")
  ...
  .call(context.horizon()
               .colors(custom_colors)
  ));
玩弄各种颜色,直到找到你喜欢的组合。在上面的例子中,只有异常值是红色的,而其余的将遵循蓝色和绿色的模式


希望这有帮助

指向colorbrewer的链接已关闭