2012-07-08 92 views
0

我正在使用jqplot来显示将显示数字以及二进制值的图形。我正在使用dateAxisRenderer作为x轴。用jqplot在y轴上映射数值输入值

要显示的数据采用[timestamp,value]的形式。现在模拟图工作正常,但对于二进制文件,我必须在y轴上显示ON和OFF,而不是0和1。

我正在使用ticks进行此行为并将值转换为[0,'OFF'],[1,'ON']以在y轴上显示标签。该图在此之后正确显示了标签,但这些值未绘制出来。

是否有任何方法将数据转换为显示,即'值',以便y轴上的值与要显示的所需数据进行映射?

回答

2

听起来像是你需要一个被格式化“是/否”的标签第二y轴:

enter image description here

这是我用来生成的fiddle ...

$(document).ready(function() { 
    $.jqplot.config.enablePlugins = true; 

    var line1 = [[1,1],[2,2],[3,3],[4,4],[5,5]]; 
    var line2 = [[1,1],[2,0],[3,1],[4,1],[5,0]]; 

    $.jqplot('chart1', [line1, line2], { 
     series: [ 
      {label: 'Analog'}, 
      {label: 'Yes/No', 'yaxis':'y2axis'}, 

     ], 
     axes: { 
      xaxis: { 
       label: 'Label' 
      }, 
      yaxis: { 
       label: 'Analog' 
      }, 
      y2axis:{ 
       label: 'Yes/No',   
       ticks: [0,1], 
       tickOptions:{formatter: 
          function (formatString, value){ 
           if (value == 0) return 'No'; 
           else if (value == 1) return 'Yes'; 
           else return ""; 
          }} 

      }  

     } 
    }); 
});​