2014-06-05 139 views
0

我正在使用JQplot生成堆叠条形图,其中的值是十进制数。我没有获得第一个堆栈栏的堆栈标签。我附上我的代码和屏幕截图。请让我知道我正在做的错误。JQPlot中的堆叠条形图不显示少量堆栈条的标签

var s1 = [69.44,48.70,70.00,70.00,70.00,70.00,70.00,67.35]; 
     var s2 = [0.00,0.00,27.08,25.04,12.47,26.80,11.83,0.00]; 
     var ticks = ['A', 'B', 'C', 'D','E','F','G','H']; 
     plot3 = $.jqplot('chartdiv', [s1, s2], { 
    stackSeries: true, 
    captureRightClick: true, 
    seriesDefaults:{ 
     renderer:$.jqplot.BarRenderer, 
     rendererOptions: { 
      fillToZero: true, barDirection: 'horizontal' 
     }, 
     pointLabels: {show: true,hideZeros:true,} 
    }, 
    axes: { 
     xaxis: { 
      pad: 1.05, 
      tickOptions: {formatString: '%.2f %'}, 
     }, 
     yaxis: { 
     renderer: $.jqplot.CategoryAxisRenderer, 
     ticks: ticks 
     } 
    }, 
    legend: { 
     show: true, 
     location: 'e', 
     placement: 'outside' 
    }  
    }); 

enter image description here

+0

'此处输入代码'部分是垃圾,请删除。 –

回答

0

我从来没有用过jqPlot,不能让你的工作,例如,但问题是,标签的s2系列内画。 A,B和H的s2值都等于0.00,所以没有绘制图形,也没有地方放置标签。

要么将​​标签放置在酒吧外,在s1之内,确保没有值为0.00。

0

本期已修复。我已经使用tickInterval for x-axis来解决它。

下面是代码:

s1 = [69.44,48.70,70.00,70.00,70.00,70.00,70.00,67.35]; 

    s2 = [0.00,0.00,27.08,25.04,12.47,26.80,11.83,0.00]; 

    ticks = ['A', 'B', 'C', 'D','E','F','G','H']; 
    plot3 = $.jqplot('chartdiv', [s1, s2], { 
stackSeries: true, 
captureRightClick: true, 
seriesDefaults:{ 
    renderer:$.jqplot.BarRenderer, 
    rendererOptions: { 
     fillToZero: true, barDirection: 'horizontal' 
    }, 
    pointLabels: {show: true,hideZeros:true,labelsFromSeries:true,xpadding: 6} 
}, 
axes: { 
    xaxis: { 
     pad: 1.05, 
     tickOptions: {formatString: '%.2f %'}, 
     min:0.00, 
     tickInterval : 10.00, 
     max:100.00, 
    }, 
    yaxis: { 
    renderer: $.jqplot.CategoryAxisRenderer, 
    ticks: ticks, 
    } 
}, 
legend: { 
    show: true, 
    location: 'e', 
    placement: 'outside' 
}  

});