我有少量数据点,但值范围很大。我正在使用 LogAxisRenderer 来帮助显示它,但仍有一些值非常小,以至于条的宽度小于标签,并且条可能几乎不可见,只有几个像素宽。
我想要做的是设置一个最小宽度(比如 20 像素),以便条形图永远不会小于最小值,并且标签将适合条形图。我在另一个图形库(不幸的是基于闪存的)中看到了这一点。但我不认为有办法用 jqplot 做到这一点。
我的问题是:有没有办法在 jqplot 中做到这一点?如果没有,我将如何对库进行更改以允许这样做?我知道 javascript,但我不熟悉 jqplot 的内部结构,所以如果有人能指出我正确的方向,那就太好了!
请参阅 jsfiddle 上的此示例:http: //jsfiddle.net/C9bcJ/11/
这是代码:
plot4 = $.jqplot('bar_chart', data, {
animate: true,
stackSeries: true,
captureRightClick: true,
seriesColors: ['#00ff00', '#ffff00', '#ff0000'],
seriesDefaults: {
renderer: $.jqplot.BarRenderer,
shadowAngle: 135,
rendererOptions: {
barDirection: 'horizontal',
highlightMouseDown: true
},
pointLabels: {
show: true,
formatString: '%d',
hideZeros: true
}
},
axes: {
xaxis: {
renderer: $.jqplot.LogAxisRenderer,
showTicks: false,
drawMajorGridlines: false
},
yaxis: {
renderer: $.jqplot.CategoryAxisRenderer,
rendererOptions: {
tickRenderer: $.jqplot.AxisTickRenderer,
tickOptions: {
mark: null,
fontSize: 14
}
},
ticks: ticks
}
}
});
这是图表图像的链接: