jqplot反转y轴点和其他问题

时间:2013-02-01 17:23:37

标签: javascript jquery jqplot

我得到了这样的结果: enter image description here

这很奇怪,因为为什么我在y轴1 1 2 2 2上得到这个值。我的预期Y轴点数仅为1和2,因为我的结果是

[[["2013-01-30", "2"], ["2013-01-31", "2"], ["2013-02-01", "1"]]]

我在这里要做的是将Y轴反转为最高1或顶部,就像屏幕截图一样。

这是我的代码:

我通过ajax在我的json结果上得到了这个。这是结果:

[{"execution_datetime":"2013-01-30","sales_rank":"2"},{"execution_datetime":"2013-01-31","sales_rank":"2"},{"execution_datetime":"2013-02-01","sales_rank":"1"}],这是jQuery.each

上的数据的结果
  var response =[[]];
    var maxSR = 1;
    jQuery.each(data, function(index, value) {
        if( this.sales_rank > maxSR ) {
        maxSR = this.sales_rank; //I am getting the largest number in the response array so that I can assign it on the Y-AXIS MIN 
        }
        response[0].push([this.execution_datetime, this.sales_rank]);
    });

    //response has already a value of:
    //[[["2013-01-30", "2"], ["2013-01-31", "2"], ["2013-02-01", "1"]]]

    var tmpMin = response[0][0];
    var xMin = tmpMin[0];

    var plot2 = $.jqplot('myChart',response,{
    axes:{
        xaxis:{
            renderer:$.jqplot.DateAxisRenderer,
            tickOptions:{formatString:'%b %#d'},
            tickInterval:"1 days",
            min: xMin,
          },
        yaxis:{
            tickOptions:{ formatString:'%d'  },
            max:1,
            min:parseInt(maxSR),
        },
    },
        highlighter:{
            show:true,
            sizeAdjust: 7.5,
        },
        cursor: {
          show:false,
        },
  });

我也尝试删除y轴上的tickOptions:{ formatString:'%d' },,它似乎正在工作,问题是,我在Y轴上得到了一些我不喜欢的花车。我该如何解决这个问题?

另一个问题是,这个问题将得到解决,是否可以设置一种偏移到x轴,这样点就不会位于边界上?

非常感谢您的帮助!谢谢! :)

2 个答案:

答案 0 :(得分:1)

使用此功能可以反转Y轴值:

tickOptions:{ formatString:'%i'}

要消除y轴1 1 2 2 2上的值,您应该使用:

numberTicks: value 
  

是否可以设置一种偏移到x轴,这样这些点就不会位于边界上?

你可以用这个:

xaxis:{
//
min: xMin <-- subtract 1 to this value.

//
yaxis:{
   min: parseInt(maxSR) <-- subtract 1 to this value.

答案 1 :(得分:0)

我认为下面的代码中max最大为1,min为2。您希望将max设置为2,将min设置为1

yaxis:{
                tickOptions:{ formatString:'%d'  },
                max:1,
                min:parseInt(maxSR),
            },

实施例

 yaxis:{
                    tickOptions:{ formatString:'%d'  },
                    max:2,
                    min:1,
                },