2016-08-01 37 views
1

我正在尝试一个“平行坐标”图表,我几乎想要什么,但我在定义不同方向轴标签。 我需要将标签全部定向到右侧,第一个除外。 我可能不得不向我的“尺寸”添加一个轴变量,但我不知道该怎么做。如何在平行坐标图中为轴标签使用不同的方向

var dimensions = [ 
    { 
    name: "name", 
    scale: d3.scale.ordinal().rangePoints([0, height]), 
    type: String 
    }, 

如果有人可以看看代码,那就太棒了。 Plunker here: https://plnkr.co/edit/BgKBgANoMDV3123iQ9sP?p=preview

谢谢!

回答

0

在这里的解决方案是创建2个不同的y轴:

var yAxis = d3.svg.axis() 
    .orient("right"); 

var yAxis2 = d3.svg.axis() 
    .orient("left"); 

,然后调用 “左” 一个只为第一轴:

dimension.append("g") 
     .attr("class", "axis") 
     .each(function(d,i) { 
      if(i==0){ 
       d3.select(this).call(yAxis2.scale(d.scale)); 
      } else { 
       d3.select(this).call(yAxis.scale(d.scale)); 
      } 
     }) 

这里是你的plunker:https://plnkr.co/edit/vzNHr6mvAVeX7J4PAnf6?p=preview

+1

这真是太棒了,非常感谢Gerardo! –

相关问题