在没有硬编码的情况下在Dygraph中创建新轴

时间:2013-10-09 10:19:06

标签: dygraphs

考虑以下示例:http://dygraphs.com/tests/two-axes.html

 g = new Dygraph(    
              document.getElementById("demodiv"),    
              data,    
          {   
            labels: [ 'Date', 'Y1', 'Y2', 'Y3', 'Y4' ],   
            'Y3': { axis: {  }  },  
            'Y4': {   
              axis: 'Y3'  // use the same y-axis as series Y3  
            },  
            axes: {  
              y2: {  
                // set axis-related properties here  
                labelsKMB: true  
              }  
            },  
            ylabel: 'Primary y-axis',  
            y2label: 'Secondary y-axis',  
            yAxisLabelWidth: 60  
          }  
      );

上面的代码创建了一个Dygraph,Y3作为辅助轴 我的问题是,我们可以将“Y3”作为变量传递而不是硬编码 我想让它充满活力 我试图将它作为字符串变量/ array / json obj传递。但它没有用。
请提出将'Y3'作为变量传递的解决方案。

1 个答案:

答案 0 :(得分:0)

这不是dygraphs特有的,这是一个普遍的JS问题。您可以使用[]表示法在对象中设置字段:

var series = 'Y3';
var opts = { ... };
opts[series] = { axis: {} };

您可能还想将new syntax用于辅助轴,这有点简单。