更改x轴的刻度标签

时间:2016-06-02 07:38:41

标签: javascript jqplot

我希望x轴上显示的刻度具有y轴的值(只应更改值,而不是位置)。下面是JsFiddle

https://jsfiddle.net/sonal215/337afs1h/1/

而不是1,2在x轴上显示,我想在x轴刻度标签上显示10,5(各自的y轴值)。

我试过调试它,库中有一个jqplot-xaxis-tick类来设置ticks值。

<div class="jqplot-axis jqplot-xaxis" style="position: absolute; width: 180px; height: 18px; left: 0px; bottom: 0px;"><div class="jqplot-xaxis-tick" style="position: absolute; left: 47px;">1</div><div class="jqplot-xaxis-tick" style="position: absolute; left: 127px;">2</div></div>

如果我能以任何方式改变在库中显示值的逻辑,那么它将起作用。 或者还有其他方法可以做到。

请帮忙

1 个答案:

答案 0 :(得分:1)

您可以在创建jqplot-xaxis-tick div之后对其进行操作,并为y数据数组中的s1值分配。

$(document).ready(function() {
  var s1 = [
    [1, 10],
    [2, 5]
  ];
  plot1 = $.jqplot('chart1', [s1], {
    seriesColors: ["#EB2300", "#FFCC00"],
    seriesDefaults: {
      renderer: $.jqplot.BarRenderer,
      rendererOptions: {
        varyBarColor: true,
        barWidth: 30,
        barMargin: -30
      },
      pointLabels: {
        show: true
      }
    },
    grid: {
      drawBorder: false
    },
    axes: {
      xaxis: {
        renderer: $.jqplot.CategoryAxisRenderer
      },
      yaxis: {
        tickOptions: {
          show: false
        },
        rendererOptions: {
          drawBaseline: false
        }
      }
    }
  });
 //assign x values with y values//
 $('.jqplot-xaxis-tick').each(function(i,elem) {
        $(this).text(s1[i][1]);
    });
});

查看小提琴中的一个工作示例:

https://jsfiddle.net/337afs1h/2/