在jqplot中使用y轴上的文本映射数字输入值

时间:2012-07-08 19:46:18

标签: binary jqplot

我正在使用jqplot来显示将显示数字和二进制值的图形。我正在使用dateAxisRenderer作为x轴。

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

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

有没有办法将数据转换成显示,即“值”,以便y轴上的值与要显示的所需数据一起映射?

1 个答案:

答案 0 :(得分:2)

听起来你需要第二个用“是/否”标签格式化的yaxis:

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 "";
                             }}

            }       

        }
    });
});​