1

我有少量数据点,但值范围很大。我正在使用 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
        }
    }
});

这是图表图像的链接:

http://i.imgur.com/89Bt4HK.jpg

4

0 回答 0