0

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

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

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

有什么方法可以将数据转换为显示,即“值”,以便将 y 轴上的值映射到要显示的所需数据?

4

1 回答 1

2

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

在此处输入图像描述

这是我用来生成的小提琴......

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

            }       

        }
    });
});​
于 2012-07-09T16:35:54.340 回答