首页 文章

jqPlot BarRenderer条宽

提问于
浏览
1

我有一个动态生成的jqPlot条形图 . 图表底部的类别数量可能会有很大差异,其中一些类别可能有很长的标签 . 出于空间原因,我不希望有角度标签 . 我想知道的是,是否有任何方法可以访问各个条形元素的宽度并改变标签css的宽度并将溢出设置为隐藏基于此 . 我知道BarRenderer组件有一个barWidth但我无法在图形完成渲染后找到如何访问它 .

1 回答

  • 1

    这是一个hacky的答案 . 我想我可以通过减去两个相邻x轴标签的左侧位置来推导出条形宽度 .

    var firstXAxisLabel = $('#chart-id .jqplot-xaxis-tick:eq(0)');
    var secondXAxisLabel = $('#chart-id .jqplot-xaxis-tick:eq(1)');
    if (firstXAxisLabel.length === 1 && secondXAxisLabel.length === 1) {
      var barWidth = secondXAxisLabel.offset().left - firstXAxisLabel.offset().left;
      $('#chart-id .jqplot-xaxis-tick').width(barWidth);
    }
    

    然后在css中将溢出设置为隐藏:

    .jqplot-xaxis-tick
    {
        overflow: hidden;
    }
    

相关问题