1

我有一个数据集以 acubism的形式返回metric,因此它具有值

0 = very bad
1 = okay
2 = bad

我可以写一个d3.scale这样的

var ord = d3.scale.ordinal( [ 0, 1, 2, null ] ).range( [ -2, 2, -1, null ] );
for( var i=0; i<=2; i++ ) {
  console.log( i + ': ' + ord(i) );
}
console.log(  'null: ' + ord(null) );

终端返回

0: -2
1: 2
2: -1
null: null 

看起来不错......但是,当我尝试将此比例应用于立体主义水平图表时,图表呈现良好,除了所表示的数据没有将坏值显示为负值和好值作为正值:

  d3.select("body").selectAll(".horizon")
    .data( metrics )
  .enter().insert("div", ".bottom")
    .attr("class", "horizon")
  .call(
    context.horizon()
      .scale( d3.scale.ordinal([ 0, 1, 2, null ]).range([ -2, 2, -1, null ]) )
  );

我究竟做错了什么?

4

1 回答 1

0

检查horizo​​n.extent([extent])

https://github.com/square/cubism/wiki/Horizo​​n

于 2013-07-18T01:13:35.233 回答