2012-10-11 29 views
6

可能的复制问题Bar chart in Javascript: stacked bars + grouped bars分组,并与NVD3堆叠multiBarChart

我试图创建一个堆叠条形图,可以让你比较2倍的值(深和淡蓝色)上周的数据点(二次光蓝调'背后')。

grouped and stacked multiBarChart

  1. multiBarChart().stacked(true)开始第一我想这两个星期合并为14条,其中x位置可以帮助组棒单个阵列。我试图以形成我的组合对象的阵列,其中.x属性的值是00.311.322.3enter image description here 不幸的是不像lineChart()它不使用x值用于定位。

  2. 另一个想法是利用组.stacked(false),提供4个项目(而不是2)与相同的x值。这些然后看起来重叠在彼此的顶部而不是堆叠。 enter image description here 这里的间距看起来不错,但我如何堆叠这2个2?

回答

1

让我只是先说我不是nvd3专家。我自己几乎没有经过入门阶段。

这就是说,它看起来像你让自己太难了。

我想你真的想发送nvd3两套数据,两者之间有x的匹配。 (例如,(1,Y1A)对应于(1,Y2A),然后(2,Y2A)与(2,Y2B)等)

可以通过以下更清楚地看到这一点:

  1. 头对他们的Live Code page
  2. 选择组/堆积条形图。
  3. 选择数据(JSON)选项卡。
  4. 替换为以下的第一功能,并观察所得到的x值:

    function() { 
     return stream_layers(2,10,.1).map(function(data, i) { 
     alert('Stream '+i+': '+JSON.stringify(data)); 
     return { 
      key: 'Stream' + i, 
      values: data 
     }; 
     }); 
    } 

最好按我的理解,这就是你要寻找的模型。

+0

谢谢你的URL修复,Rikin!这是小事情.... – Glenn

2

嘿,我刚刚在d3.js上开发了分组+堆积条形图。这不是NVD3,但它可以帮助你。